import("methods")
import("tframe")
importFrom("stats","start")
importFrom("stats","end")
importFrom("stats","frequency")
importFrom("stats","time")
importFrom("stats","aggregate")

importFrom("timeSeries","timeSeries")

## not generic
export(
  "changeTSrepresentation",
  "TSwriteXLS",
  "TSwriteCSV",
  "rollAggregate",
  "tfI",
  "tfpersp",
  "as.weekly",
  "as.quarterly",
  "as.annually")

S3method("is.tframed","zoo")
##S3method("tfstart","zoo")
S3method("tfstart","zootframe")
##S3method("tfend","zoo")
S3method("tfend","zootframe")
S3method("Tobs","zoo")
S3method("Tobs","zootframe")
S3method("tframe","zoo")
S3method("tfSet","zootframe")
S3method("tfSet","Date")
S3method("tfSet","POSIXct")
S3method("tfwindow","zoo")
S3method("tbind","zoo")

S3method("tfL","zoo")
S3method("tfExpand","zoo")



S3method("is.tframed","xts")
##S3method("tfstart","xts")
S3method("tfstart","xtstframe")
##S3method("tfend","xts")
S3method("tfend","xtstframe")
S3method("Tobs","xts")
S3method("Tobs","xtstframe")
S3method("tframe","xts")
S3method("tfSet","xtstframe")
S3method("tfwindow","xts")
S3method("tbind","xts")

S3method("tfL","xts")
S3method("tfExpand","xts")


S3method("is.tframed","its")
S3method("tfstart","its")
S3method("tfstart","itstframe")
S3method("tfend","its")
S3method("tfend","itstframe")
S3method("Tobs","its")
S3method("Tobs","itstframe")
S3method("tframe","its")
S3method("tfSet","itstframe")
S3method("tfwindow","its")
S3method("tbind","its")
S3method("time","its")


S3method("is.tframed","tis")
##S3method("tfstart","tis")
S3method("tfstart","tistframe")
##S3method("tfend","tis")
S3method("tfend","tistframe")
S3method("Tobs","tis")
S3method("Tobs","tistframe")
S3method("tframe","tis")
S3method("tfSet","tistframe")
S3method("tfwindow","tis")
S3method("tbind","tis")

S3method("is.tframed","timeSeries")
##S3method("tfstart","timeSeries")
S3method("tfstart","timeSeriestframe")
##S3method("tfend","timeSeries")
S3method("tfend","timeSeriestframe")
S3method("Tobs","timeSeries")
S3method("Tobs","timeSeriestframe")
S3method("tframe","timeSeries")
S3method("tfSet","timeSeriestframe")
S3method("tfwindow","timeSeries")
S3method("tbind","timeSeries")

S3method("tfL","timeSeries")
S3method("tfExpand","timeSeries")

##exportClasses(
##   ""
##   )


## S4 methods
exportMethods(
   "is.tframed",
   "tframe",
   "tfwindow",
   "tbind",
   "tfL",
   "tfExpand",
   "seriesNames<-",
   "Tobs"
   )
