import(splines)
import(survival)
import(relsurv)
import(reticulate)
import(tune)

importFrom(stats, pnorm, dnorm, qnorm, update,  binomial, lm, glm, na.omit, predict, quantile,
           sd, optim, pchisq, update.formula, coef, setNames, as.formula, model.matrix, median, formula)
importFrom(date, date.mdy, mdy.date, as.date)
importFrom(utils, methods, tail, combn)
importFrom(graphics, abline, lines, plot.default, grid, segments)
importFrom(nlme, nlme, varFixed, varPower, nlme.formula)
importFrom(MASS, mvrnorm, stepAIC)
importFrom(mvtnorm, rmvnorm)
importFrom(statmod, gauss.quad)
importFrom(doParallel, registerDoParallel)
importFrom(foreach, foreach, registerDoSEQ, "%dopar%")
importFrom(parallel, clusterEvalQ, makeCluster, stopCluster)
importFrom(kernlab, ksvm)
importFrom(nnet, nnet)
importFrom(glmnet, glmnet, cv.glmnet)
importFrom(caret, train, trainControl, twoClassSummary)
importFrom(SuperLearner, SuperLearner, All)
importFrom(methods, is)

importFrom(flexsurv, flexsurvreg)
importFrom(survivalmodels, deepsurv)
importFrom(randomForestSRC, rfsrc, tune.rfsrc, rfsrc.fast)
importFrom(prodlim, prodlim)
importFrom(hdnom, glmnet_basesurv)
importFrom(glmnetUtils, cva.glmnet)
#importFrom(zoo, na.approx)
#importFrom(dplyr, last)
importFrom(mosaic, spliner)
importFrom(cubature, cubintegrate)
importFrom(mosaicCalc, D)
importFrom(timeROC, timeROC)
importFrom(rpart, rpart)

export(ipw.survival)
export(ipw.log.rank)
export(gc.logistic)
export(gc.survival)
export(gc.sl.binary)
#export(gc.sl.time)
#export(hr.sl.time)
export(mixture.2states)
export(markov.3states)
export(markov.3states.rsadd)
export(markov.4states)
export(markov.4states.rsadd)
export(semi.markov.3states)
export(semi.markov.3states.rsadd)
export(semi.markov.3states.ic)
export(semi.markov.4states)
export(semi.markov.4states.rsadd)
export(lrs.multistate)
export(pred.mixture.2states)
export(auc)
export(expect.utility1)
export(expect.utility2)
export(roc.binary)
export(roc.net)
export(roc.time)
export(roc.summary)
export(survival.summary)
export(survival.summary.strata)
export(differentiation)
export(rmst)

export(aft.gamma)
export(aft.ggamma)
export(aft.weibull)
export(aft.llogis)
export(ph.exponential)
export(ph.gompertz)
export(cox.lasso)
export(cox.ridge)
export(cox.en)
export(cox.all)
export(cox.aic)
export(nn.time)
export(rf.time)
export(sl.time)


export(metric)

export(tune.cox.lasso)
export(tune.cox.ridge)
export(tune.cox.en)
export(tune.cox.aic)
export(tune.nn.time)
export(tune.rf.time)

export(port)

export(roc.prognostic.aggregate)
export(roc.prognostic.individual)
export(survival.mr)

S3method(predict, flexsurv)
S3method(predict, cox)
S3method(predict, rf.time)
S3method(predict, nn.time)
S3method(predict, sl.time)

S3method(summary, sl.time)
S3method(plot, sl.time)
S3method(print, sl.time)

S3method(plot, rocrisca)
S3method(lines, rocrisca)
S3method(plot, survrisca)
