useDynLib(dlmtree, .registration=TRUE)
importFrom(Rcpp, evalCpp)
exportPattern("^[[:alpha:]]+")

S3method(print, tdlnm)
S3method(print, tdlm)
S3method(print, tdlmm)
S3method(print, hdlm)
S3method(print, hdlmm)
S3method(print, monotone)

S3method(summary, tdlnm)
S3method(summary, tdlm)
S3method(summary, tdlmm)
S3method(summary, hdlm)
S3method(summary, hdlmm)
S3method(summary, monotone)

S3method(print, summary.tdlnm)
S3method(print, summary.tdlm)
S3method(print, summary.tdlmm)
S3method(print, summary.hdlm)
S3method(print, summary.hdlmm)
S3method(print, summary.monotone)

S3method(plot, summary.tdlm)
S3method(plot, summary.tdlnm)
S3method(plot, summary.monotone)
S3method(plot, summary.tdlmm)

S3method(predict, hdlm)
S3method(predict, hdlmm)

S3method(shiny, hdlm)
S3method(shiny, hdlmm)

S3method(diagnose, summary.tdlnm)
S3method(diagnose, summary.tdlm)
S3method(diagnose, summary.tdlmm)
S3method(diagnose, summary.hdlm)
S3method(diagnose, summary.hdlmm)
S3method(diagnose, summary.monotone)

import(ggplot2)
import(ggridges)
import(dplyr)
import(shiny)
import(shinythemes)
import(coda)

importFrom("stats", "as.formula", "model.frame", "model.matrix",
           "model.response", "pnorm", "quantile", "rbinom", "rnorm",
           "sd", "terms.formula", "var", "IQR", "median", "runif", "toeplitz",
           "aggregate", "complete.cases", "delete.response", "cov", "predict",
           "dnorm", "na.fail", "reorder", "rnbinom", "setNames", "step", "time")

importFrom("utils", "combn", "data", "packageDescription", "methods", "download.file")

importFrom("tidyr", "pivot_longer")

importFrom("mgcv", "bam", "predict.bam")


export(dlmtree)

export(sim.tdlnm)
export(sim.tdlmm)
export(sim.hdlmm)

export(combine.models)
export(estDLM)
export(pip)
export(splitpoints)
export(adj_coexposure)

export(plot.summary.tdlnm)
export(plot.summary.tdlm)
export(plot.summary.monotone)
export(plot.summary.tdlmm)

export(predict.hdlm)
export(predict.hdlmm)
