importFrom(grDevices, adjustcolor)
importFrom(graphics, abline, plot, text)
importFrom(stats, as.formula, binom.test, binomial, coef,
           glm, lm, model.matrix, pchisq, qchisq, setNames,
           vcov)

import(methods)
import(gdsfmt)
import(SeqArray)
import(S4Vectors)
import(IRanges)
import(GenomicRanges)
import(Biobase)
import(logistf)
importFrom(GWASExactHW, HWExact)
importFrom(dplyr, group_by, mutate, n)
importFrom(tidyr, separate_rows)
importFrom(rlang, .data)
importFrom(Matrix, Matrix)

exportClasses(SeqVarData,
              SeqVarIterator,
              SeqVarBlockIterator,
              SeqVarRangeIterator,
              SeqVarWindowIterator,
              SeqVarListIterator)

exportMethods(show,
              sampleData, "sampleData<-",
              variantData, "variantData<-",
              validateSex,
              granges,
              variantFilter,
              lastFilter, "lastFilter<-",
              variantBlock,
              variantRanges,
              iterateFilter,
              resetIterator,
              currentRanges,
              currentVariants,
              applyMethod,
              refChar,
              altChar,
              nAlleles,
              isVariant,
              isSNV,
              getGenotype,
              getGenotypeAlleles,
              refDosage,
              altDosage,
              alleleDosage,
              expandedAltDosage,
              expandedVariantIndex,
              variantInfo,
              getVariableLengthData,
              imputedDosage,
              titv,
              alleleFrequency,
              alleleCount,
              minorAlleleCount,
              missingGenotypeRate,
              heterozygosity,
              hethom,
              homozygosity,
              meanBySample,
              countSingletons,
              pca,
              hwe,
              inbreedCoeff,
              mendelErr,
              duplicateDiscordance,
              alternateAlleleDetection,
              refFrac,
              refFracOverHets,
              refFracPlot,
              regression,
              chromWithPAR)

export(SeqVarData,
       SeqVarIterator,
       SeqVarBlockIterator,
       SeqVarRangeIterator,
       SeqVarWindowIterator,
       SeqVarListIterator,
       setVariantID)
