// This file is auto-generated by @hey-api/openapi-ts

export type ClientOptions = {
    baseUrl: 'http://localhost:8081/brapi/v2' | (string & {});
};

export type ExternalReferencesInner = {
    referenceID?: string;
    referenceId?: string;
    referenceSource?: string;
};

export type Method = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    bibliographicalReference?: string;
    description?: string;
    formula?: string;
    methodClass?: string;
    methodName?: string;
    methodPUI?: string;
    ontologyReference?: OntologyReference;
    methodDbId?: string;
};

export type ObservationVariableNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    commonCropName?: string;
    contextOfUse?: Array<string>;
    defaultValue?: string;
    documentationURL?: string;
    growthStage?: string;
    institution?: string;
    language?: string;
    method?: Method;
    ontologyReference?: OntologyReference;
    scale?: Scale;
    scientist?: string;
    status?: string;
    submissionTimestamp?: string;
    synonyms?: Array<string>;
    trait?: Trait;
    observationVariableName?: string;
};

export type OntologyReference = {
    documentationLinks?: Array<OntologyReferenceDocumentationLinks>;
    ontologyDbId?: string;
    ontologyName?: string;
    version?: string;
};

export type OntologyReferenceDocumentationLinks = {
    url?: string;
    URL?: string;
    type?: 'OBO' | 'RDF' | 'WEBPAGE';
};

export type Scale = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    dataType?: 'Code' | 'Date' | 'Duration' | 'Nominal' | 'Numerical' | 'Ordinal' | 'Text';
    decimalPlaces?: number;
    units?: string;
    ontologyReference?: OntologyReference;
    scaleName?: string;
    scalePUI?: string;
    validValues?: ScaleBaseClassValidValues;
    scaleDbId?: string;
};

export type ScaleBaseClassValidValues = {
    categories?: Array<ScaleBaseClassValidValuesCategories>;
    max?: number;
    min?: number;
    maximumValue?: string;
    minimumValue?: string;
};

export type ScaleBaseClassValidValuesCategories = {
    label?: string;
    value?: string;
};

export type Trait = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    alternativeAbbreviations?: Array<string>;
    attribute?: string;
    attributePUI?: string;
    entity?: string;
    entityPUI?: string;
    mainAbbreviation?: string;
    ontologyReference?: OntologyReference;
    status?: string;
    synonyms?: Array<string>;
    traitClass?: string;
    traitDescription?: string;
    traitName?: string;
    traitPUI?: string;
    traitDbId?: string;
};

export type DataFile = {
    fileDescription?: string;
    fileMD5Hash?: string;
    fileName?: string;
    fileSize?: number;
    fileType?: string;
    fileURL?: string;
};

export type Metadata = {
    datafiles?: Array<DataFile>;
    status?: Array<Status>;
    pagination?: Pagination;
};

export type ObservationVariable = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    commonCropName?: string;
    contextOfUse?: Array<string>;
    defaultValue?: string;
    documentationURL?: string;
    growthStage?: string;
    institution?: string;
    language?: string;
    method?: Method;
    ontologyReference?: OntologyReference;
    scale?: Scale;
    scientist?: string;
    status?: string;
    submissionTimestamp?: string;
    synonyms?: Array<string>;
    trait?: Trait;
    observationVariableDbId?: string;
    observationVariableName?: string;
};

export type ObservationVariableSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ObservationVariable;
};

export type Pagination = {
    currentPage?: number;
    pageSize?: number;
    totalCount?: number;
    totalPages?: number;
};

export type Status = {
    message?: string;
    messageType?: 'DEBUG' | 'ERROR' | 'WARNING' | 'INFO';
};

export type Contact = {
    contactDbId?: string;
    email?: string;
    instituteName?: string;
    name?: string;
    orcid?: string;
    type?: string;
};

export type TrialNewRequest = {
    active?: boolean;
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    commonCropName?: string;
    contacts?: Array<Contact>;
    datasetAuthorships?: Array<TrialNewRequestDatasetAuthorships>;
    documentationURL?: string;
    endDate?: string;
    externalReferences?: Array<ExternalReferencesInner>;
    programDbId?: string;
    programName?: string;
    publications?: Array<TrialNewRequestPublications>;
    startDate?: string;
    trialDescription?: string;
    trialName?: string;
    trialPUI?: string;
};

export type TrialNewRequestDatasetAuthorships = {
    datasetPUI?: string;
    license?: string;
    publicReleaseDate?: string;
    submissionDate?: string;
};

export type TrialNewRequestPublications = {
    publicationPUI?: string;
    publicationReference?: string;
};

export type Trial = {
    active?: boolean;
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    commonCropName?: string;
    contacts?: Array<Contact>;
    datasetAuthorships?: Array<TrialNewRequestDatasetAuthorships>;
    documentationURL?: string;
    endDate?: string;
    externalReferences?: Array<ExternalReferencesInner>;
    programDbId?: string;
    programName?: string;
    publications?: Array<TrialNewRequestPublications>;
    startDate?: string;
    trialDescription?: string;
    trialName?: string;
    trialPUI?: string;
    trialDbId?: string;
};

export type TrialSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Trial;
};

export type TraitBaseClass = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    alternativeAbbreviations?: Array<string>;
    attribute?: string;
    attributePUI?: string;
    entity?: string;
    entityPUI?: string;
    mainAbbreviation?: string;
    ontologyReference?: OntologyReference;
    status?: string;
    synonyms?: Array<string>;
    traitClass?: string;
    traitDescription?: string;
    traitName?: string;
    traitPUI?: string;
};

export type TraitSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Trait;
};

export type DataLink = {
    dataFormat?: string;
    description?: string;
    fileFormat?: string;
    name?: string;
    provenance?: string;
    scientificType?: string;
    url?: string;
    version?: string;
};

export type EnvironmentParameter = {
    description?: string;
    parameterName?: string;
    parameterPUI?: string;
    unit?: string;
    unitPUI?: string;
    value?: string;
    valuePUI?: string;
};

export type ObservationUnitHierarchyLevel = {
    levelName?: 'study' | 'field' | 'entry' | 'rep' | 'block' | 'sub-block' | 'plot' | 'sub-plot' | 'plant' | 'pot' | 'sample';
    levelOrder?: number;
};

export type StudyExperimentalDesign = {
    PUI?: string;
    description?: string;
};

export type StudyGrowthFacility = {
    PUI?: string;
    description?: string;
};

export type StudyLastUpdate = {
    timestamp?: string;
    version?: string;
};

export type StudyNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    active?: boolean;
    commonCropName?: string;
    contacts?: Array<Contact>;
    culturalPractices?: string;
    dataLinks?: Array<DataLink>;
    documentationURL?: string;
    endDate?: string;
    environmentParameters?: Array<EnvironmentParameter>;
    experimentalDesign?: StudyExperimentalDesign;
    growthFacility?: StudyGrowthFacility;
    lastUpdate?: StudyLastUpdate;
    license?: string;
    locationDbId?: string;
    locationName?: string;
    observationLevels?: Array<ObservationUnitHierarchyLevel>;
    observationUnitsDescription?: string;
    seasons?: Array<string>;
    startDate?: string;
    studyCode?: string;
    studyDescription?: string;
    studyName?: string;
    studyPUI?: string;
    studyType?: string;
    trialDbId?: string;
    trialName?: string;
    observationVariableDbIds?: Array<string>;
};

export type Study = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    active?: boolean;
    commonCropName?: string;
    contacts?: Array<Contact>;
    culturalPractices?: string;
    dataLinks?: Array<DataLink>;
    documentationURL?: string;
    endDate?: string;
    environmentParameters?: Array<EnvironmentParameter>;
    experimentalDesign?: StudyExperimentalDesign;
    growthFacility?: StudyGrowthFacility;
    lastUpdate?: StudyLastUpdate;
    license?: string;
    locationDbId?: string;
    locationName?: string;
    observationLevels?: Array<ObservationUnitHierarchyLevel>;
    observationUnitsDescription?: string;
    seasons?: Array<string>;
    startDate?: string;
    studyCode?: string;
    studyDescription?: string;
    studyName?: string;
    studyPUI?: string;
    studyType?: string;
    trialDbId?: string;
    trialName?: string;
    observationVariableDbIds?: Array<string>;
    studyDbId?: string;
};

export type StudySingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Study;
};

export type SeedLotContentMixture = {
    crossDbId?: string;
    crossName?: string;
    germplasmDbId?: string;
    germplasmName?: string;
    mixturePercentage?: number;
};

export type SeedLotNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    amount?: number;
    createdDate?: string;
    germplasmDbId?: string;
    lastUpdated?: string;
    locationDbId?: string;
    locationName?: string;
    programDbId?: string;
    programName?: string;
    seedLotDescription?: string;
    seedLotName?: string;
    sourceCollection?: string;
    storageLocation?: string;
    units?: string;
    contentMixture?: Array<SeedLotContentMixture>;
};

export type SeedLot = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    amount?: number;
    createdDate?: string;
    germplasmDbId?: string;
    lastUpdated?: string;
    locationDbId?: string;
    locationName?: string;
    programDbId?: string;
    programName?: string;
    seedLotDescription?: string;
    seedLotName?: string;
    sourceCollection?: string;
    storageLocation?: string;
    units?: string;
    contentMixture?: Array<SeedLotContentMixture>;
    seedLotDbId?: string;
};

export type SeedLotSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: SeedLot;
};

export type Season = {
    seasonDbId?: string;
    seasonName?: string;
    year?: number;
};

export type SeasonSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Season;
};

export type ScaleBaseClass = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    dataType?: 'Code' | 'Date' | 'Duration' | 'Nominal' | 'Numerical' | 'Ordinal' | 'Text';
    decimalPlaces?: number;
    units?: string;
    ontologyReference?: OntologyReference;
    scaleName?: string;
    scalePUI?: string;
    validValues?: ScaleBaseClassValidValues;
};

export type ScaleSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Scale;
};

export type SampleNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    column?: number;
    externalReferences?: Array<ExternalReferencesInner>;
    germplasmDbId?: string;
    observationUnitDbId?: string;
    plateDbId?: string;
    plateName?: string;
    programDbId?: string;
    row?: string;
    sampleBarcode?: string;
    sampleDescription?: string;
    sampleGroupDbId?: string;
    sampleName?: string;
    samplePUI?: string;
    sampleTimestamp?: string;
    sampleType?: string;
    studyDbId?: string;
    takenBy?: string;
    tissueType?: string;
    trialDbId?: string;
    well?: string;
};

export type Sample = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    column?: number;
    externalReferences?: Array<ExternalReferencesInner>;
    germplasmDbId?: string;
    observationUnitDbId?: string;
    plateDbId?: string;
    plateName?: string;
    programDbId?: string;
    row?: string;
    sampleBarcode?: string;
    sampleDescription?: string;
    sampleGroupDbId?: string;
    sampleName?: string;
    samplePUI?: string;
    sampleTimestamp?: string;
    sampleType?: string;
    studyDbId?: string;
    takenBy?: string;
    tissueType?: string;
    trialDbId?: string;
    well?: string;
    sampleDbId?: string;
};

export type SampleListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: SampleListResponseResult;
};

export type SampleListResponseResult = {
    data?: Array<Sample>;
};

export type SampleSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Sample;
};

export type ProgramNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    abbreviation?: string;
    commonCropName?: string;
    documentationURL?: string;
    leadPersonDbId?: string;
    leadPersonName?: string;
    objective?: string;
    programName?: string;
    programType?: 'STANARD' | 'PROJECT';
    fundingInformation?: string;
};

export type Program = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    abbreviation?: string;
    commonCropName?: string;
    documentationURL?: string;
    leadPersonDbId?: string;
    leadPersonName?: string;
    objective?: string;
    programName?: string;
    programType?: 'STANARD' | 'PROJECT';
    fundingInformation?: string;
    programDbId?: string;
};

export type ProgramSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Program;
};

export type PlateNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    plateBarcode?: string;
    plateFormat?: 'PLATE_96' | 'TUBES';
    plateName?: string;
    programDbId?: string;
    sampleType?: 'DNA' | 'RNA' | 'TISSUE' | 'MIXED';
    studyDbId?: string;
    trialDbId?: string;
};

export type Plate = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    plateBarcode?: string;
    plateFormat?: 'PLATE_96' | 'TUBES';
    plateName?: string;
    programDbId?: string;
    sampleType?: 'DNA' | 'RNA' | 'TISSUE' | 'MIXED';
    studyDbId?: string;
    trialDbId?: string;
    plateDbId?: string;
};

export type PlateListResponse = {
    atContext?: Array<string>;
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: PlateListResponseResult;
};

export type PlateListResponseResult = {
    data?: Array<Plate>;
};

export type CrossParent = {
    germplasmDbId?: string;
    germplasmName?: string;
    observationUnitDbId?: string;
    observationUnitName?: string;
    parentType?: 'MALE' | 'FEMALE' | 'SELF' | 'POPULATION' | 'CLONAL';
};

export type PlannedCrossNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    crossType?: 'BIPARENTAL' | 'SELF' | 'OPEN_POLLINATED' | 'BULK' | 'BULK_SELFED' | 'BULK_OPEN_POLLINATED' | 'DOUBLE_HAPLOID';
    crossingProjectDbId?: string;
    crossingProjectName?: string;
    parent1?: CrossParent;
    parent2?: CrossParent;
    plannedCrossName?: string;
    status?: 'TODO' | 'DONE' | 'SKIPPED';
};

export type PlannedCross = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    crossType?: 'BIPARENTAL' | 'SELF' | 'OPEN_POLLINATED' | 'BULK' | 'BULK_SELFED' | 'BULK_OPEN_POLLINATED' | 'DOUBLE_HAPLOID';
    crossingProjectDbId?: string;
    crossingProjectName?: string;
    parent1?: CrossParent;
    parent2?: CrossParent;
    plannedCrossName?: string;
    status?: 'TODO' | 'DONE' | 'SKIPPED';
    plannedCrossDbId?: string;
};

export type PlannedCrossesListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: PlannedCrossesListResponseResult;
};

export type PlannedCrossesListResponseResult = {
    data?: Array<PlannedCross>;
};

export type PersonNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    description?: string;
    emailAddress?: string;
    externalReferences?: Array<ExternalReferencesInner>;
    firstName?: string;
    lastName?: string;
    mailingAddress?: string;
    middleName?: string;
    phoneNumber?: string;
    userID?: string;
};

export type Person = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    description?: string;
    emailAddress?: string;
    externalReferences?: Array<ExternalReferencesInner>;
    firstName?: string;
    lastName?: string;
    mailingAddress?: string;
    middleName?: string;
    phoneNumber?: string;
    userID?: string;
    personDbId?: string;
};

export type PersonSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Person;
};

export type PedigreeNode = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    breedingMethodDbId?: string;
    breedingMethodName?: string;
    crossingProjectDbId?: string;
    crossingYear?: number;
    defaultDisplayName?: string;
    familyCode?: string;
    germplasmDbId?: string;
    germplasmName?: string;
    germplasmPUI?: string;
    parents?: Array<PedigreeNodeParents>;
    pedigreeString?: string;
    progeny?: Array<PedigreeNodeParents>;
    siblings?: Array<PedigreeNodeSiblings>;
};

export type PedigreeNodeParents = {
    germplasmDbId?: string;
    germplasmName?: string;
    parentType?: 'MALE' | 'FEMALE' | 'SELF' | 'POPULATION' | 'CLONAL';
};

export type PedigreeNodeSiblings = {
    germplasmDbId?: string;
    germplasmName?: string;
};

export type PedigreeListResponse = {
    atContext?: Array<string>;
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: PedigreeListResponseResult;
};

export type PedigreeListResponseResult = {
    data?: Array<PedigreeNode>;
};

export type OntologyNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    authors?: string;
    copyright?: string;
    description?: string;
    documentationURL?: string;
    licence?: string;
    ontologyName?: string;
    version?: string;
};

export type Ontology = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    authors?: string;
    copyright?: string;
    description?: string;
    documentationURL?: string;
    licence?: string;
    ontologyName?: string;
    version?: string;
    ontologyDbId?: string;
};

export type OntologySingleResponse = {
    atContext?: Array<string>;
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Ontology;
};

export type GeoJson = {
    geometry?: GeoJsonGeometry;
    type?: string;
};

export type GeoJsonGeometry = {
    [key: string]: unknown;
};

export type ObservationTreatment = {
    factor?: string;
    modality?: string;
};

export type ObservationUnitLevel = {
    levelName?: 'study' | 'field' | 'entry' | 'rep' | 'block' | 'sub-block' | 'plot' | 'sub-plot' | 'plant' | 'pot' | 'sample';
    levelOrder?: number;
    levelCode?: string;
};

export type ObservationUnitLevelRelationship = {
    levelName?: 'study' | 'field' | 'entry' | 'rep' | 'block' | 'sub-block' | 'plot' | 'sub-plot' | 'plant' | 'pot' | 'sample';
    levelOrder?: number;
    levelCode?: string;
    observationUnitDbId?: string;
};

export type ObservationUnitNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    germplasmDbId?: string;
    germplasmName?: string;
    crossDbId?: string;
    crossName?: string;
    locationDbId?: string;
    locationName?: string;
    observationUnitName?: string;
    observationUnitPUI?: string;
    observationUnitPosition?: ObservationUnitPosition;
    programDbId?: string;
    programName?: string;
    seedLotDbId?: string;
    seedLotName?: string;
    studyDbId?: string;
    studyName?: string;
    treatments?: Array<ObservationTreatment>;
    trialDbId?: string;
    trialName?: string;
};

export type ObservationUnitPosition = {
    entryType?: 'CHECK' | 'TEST' | 'FILLER';
    geoCoordinates?: GeoJson;
    observationLevel?: ObservationUnitLevel;
    observationLevelRelationships?: Array<ObservationUnitLevelRelationship>;
    positionCoordinateX?: string;
    positionCoordinateXType?: 'LONGITUDE' | 'LATITUDE' | 'PLANTED_ROW' | 'PLANTED_INDIVIDUAL' | 'GRID_ROW' | 'GRID_COL' | 'MEASURED_ROW' | 'MEASURED_COL';
    positionCoordinateY?: string;
    positionCoordinateYType?: 'LONGITUDE' | 'LATITUDE' | 'PLANTED_ROW' | 'PLANTED_INDIVIDUAL' | 'GRID_ROW' | 'GRID_COL' | 'MEASURED_ROW' | 'MEASURED_COL';
};

export type Observation = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    collector?: string;
    germplasmDbId?: string;
    germplasmName?: string;
    geoCoordinates?: GeoJson;
    observationTimeStamp?: string;
    observationUnitDbId?: string;
    observationUnitName?: string;
    observationVariableDbId?: string;
    observationVariableName?: string;
    season?: Season;
    studyDbId?: string;
    uploadedBy?: string;
    value?: string;
    observationDbId?: string;
};

export type ObservationUnit = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    germplasmDbId?: string;
    germplasmName?: string;
    crossDbId?: string;
    crossName?: string;
    locationDbId?: string;
    locationName?: string;
    observationUnitName?: string;
    observationUnitPUI?: string;
    observationUnitPosition?: ObservationUnitPosition;
    programDbId?: string;
    programName?: string;
    seedLotDbId?: string;
    seedLotName?: string;
    studyDbId?: string;
    studyName?: string;
    treatments?: Array<ObservationTreatment>;
    trialDbId?: string;
    trialName?: string;
    observationUnitDbId?: string;
    observations?: Array<Observation>;
};

export type ObservationUnitListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ObservationUnitListResponseResult;
};

export type ObservationUnitListResponseResult = {
    data?: Array<ObservationUnit>;
};

export type ObservationUnitSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ObservationUnit;
};

export type ObservationNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    collector?: string;
    germplasmDbId?: string;
    germplasmName?: string;
    geoCoordinates?: GeoJson;
    observationTimeStamp?: string;
    observationUnitDbId?: string;
    observationUnitName?: string;
    observationVariableDbId?: string;
    observationVariableName?: string;
    season?: Season;
    studyDbId?: string;
    uploadedBy?: string;
    value?: string;
};

export type ObservationListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ObservationListResponseResult;
};

export type ObservationListResponseResult = {
    data?: Array<Observation>;
};

export type ObservationSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Observation;
};

export type MethodBaseClass = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    bibliographicalReference?: string;
    description?: string;
    formula?: string;
    methodClass?: string;
    methodName?: string;
    methodPUI?: string;
    ontologyReference?: OntologyReference;
};

export type MethodSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Method;
};

export type LocationNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    abbreviation?: string;
    coordinateDescription?: string;
    coordinateUncertainty?: string;
    coordinates?: GeoJson;
    countryCode?: string;
    countryName?: string;
    documentationURL?: string;
    environmentType?: string;
    exposure?: string;
    instituteAddress?: string;
    instituteName?: string;
    locationName?: string;
    locationType?: string;
    siteStatus?: string;
    slope?: string;
    topography?: string;
    parentLocationDbId?: string;
    parentLocationName?: string;
};

export type Location = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    abbreviation?: string;
    coordinateDescription?: string;
    coordinateUncertainty?: string;
    coordinates?: GeoJson;
    countryCode?: string;
    countryName?: string;
    documentationURL?: string;
    environmentType?: string;
    exposure?: string;
    instituteAddress?: string;
    instituteName?: string;
    locationName?: string;
    locationType?: string;
    siteStatus?: string;
    slope?: string;
    topography?: string;
    parentLocationDbId?: string;
    parentLocationName?: string;
    locationDbId?: string;
};

export type LocationSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Location;
};

export type ListNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    dateCreated?: string;
    dateModified?: string;
    externalReferences?: Array<ExternalReferencesInner>;
    listDescription?: string;
    listName?: string;
    listOwnerName?: string;
    listOwnerPersonDbId?: string;
    listSize?: number;
    listSource?: string;
    listType?: 'germplasm' | 'markers' | 'programs' | 'trials' | 'studies' | 'observationUnits' | 'observations' | 'observationVariables' | 'samples';
    data?: Array<string>;
};

export type ListDetails = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    dateCreated?: string;
    dateModified?: string;
    externalReferences?: Array<ExternalReferencesInner>;
    listDescription?: string;
    listName?: string;
    listOwnerName?: string;
    listOwnerPersonDbId?: string;
    listSize?: number;
    listSource?: string;
    listType?: 'germplasm' | 'markers' | 'programs' | 'trials' | 'studies' | 'observationUnits' | 'observations' | 'observationVariables' | 'samples';
    listDbId?: string;
    data?: Array<string>;
};

export type ListsSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ListDetails;
};

export type ImageNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    copyright?: string;
    description?: string;
    descriptiveOntologyTerms?: Array<string>;
    externalReferences?: Array<ExternalReferencesInner>;
    imageFileName?: string;
    imageFileSize?: number;
    imageHeight?: number;
    imageLocation?: GeoJson;
    imageName?: string;
    imageTimeStamp?: string;
    imageURL?: string;
    imageWidth?: number;
    mimeType?: string;
    observationDbIds?: Array<string>;
    observationUnitDbId?: string;
};

export type Image = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    copyright?: string;
    description?: string;
    descriptiveOntologyTerms?: Array<string>;
    externalReferences?: Array<ExternalReferencesInner>;
    imageFileName?: string;
    imageFileSize?: number;
    imageHeight?: number;
    imageLocation?: GeoJson;
    imageName?: string;
    imageTimeStamp?: string;
    imageURL?: string;
    imageWidth?: number;
    mimeType?: string;
    observationDbIds?: Array<string>;
    observationUnitDbId?: string;
    imageDbId?: string;
};

export type ImageSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Image;
};

export type GermplasmNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    accessionNumber?: string;
    acquisitionDate?: string;
    biologicalStatusOfAccessionCode?: '100' | '110' | '120' | '130' | '200' | '300' | '400' | '410' | '411' | '412' | '413' | '414' | '415' | '416' | '420' | '421' | '422' | '423' | '500' | '600' | '999';
    biologicalStatusOfAccessionDescription?: string;
    breedingMethodDbId?: string;
    breedingMethodName?: string;
    collection?: string;
    commonCropName?: string;
    countryOfOriginCode?: string;
    defaultDisplayName?: string;
    documentationURL?: string;
    donors?: Array<GermplasmNewRequestDonors>;
    genus?: string;
    germplasmName?: string;
    germplasmOrigin?: Array<GermplasmOrigin>;
    germplasmPUI?: string;
    germplasmPreprocessing?: string;
    instituteCode?: string;
    instituteName?: string;
    pedigree?: string;
    seedSource?: string;
    seedSourceDescription?: string;
    species?: string;
    speciesAuthority?: string;
    storageTypes?: Array<GermplasmStorageTypes>;
    subtaxa?: string;
    subtaxaAuthority?: string;
    synonyms?: Array<GermplasmNewRequestSynonyms>;
    taxonIds?: Array<TaxonId>;
};

export type GermplasmNewRequestDonors = {
    donorAccessionNumber?: string;
    donorInstituteCode?: string;
    germplasmPUI?: string;
};

export type GermplasmNewRequestSynonyms = {
    synonym?: string;
    type?: string;
};

export type GermplasmOrigin = {
    coordinateUncertainty?: string;
    coordinates?: GeoJson;
};

export type GermplasmStorageTypes = {
    code?: '10' | '11' | '12' | '13' | '20' | '30' | '40' | '50' | '99';
    description?: string;
};

export type TaxonId = {
    sourceName?: string;
    taxonId?: string;
};

export type Germplasm = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    accessionNumber?: string;
    acquisitionDate?: string;
    biologicalStatusOfAccessionCode?: '100' | '110' | '120' | '130' | '200' | '300' | '400' | '410' | '411' | '412' | '413' | '414' | '415' | '416' | '420' | '421' | '422' | '423' | '500' | '600' | '999';
    biologicalStatusOfAccessionDescription?: string;
    breedingMethodDbId?: string;
    breedingMethodName?: string;
    collection?: string;
    commonCropName?: string;
    countryOfOriginCode?: string;
    defaultDisplayName?: string;
    documentationURL?: string;
    donors?: Array<GermplasmNewRequestDonors>;
    genus?: string;
    germplasmName?: string;
    germplasmOrigin?: Array<GermplasmOrigin>;
    germplasmPUI?: string;
    germplasmPreprocessing?: string;
    instituteCode?: string;
    instituteName?: string;
    pedigree?: string;
    seedSource?: string;
    seedSourceDescription?: string;
    species?: string;
    speciesAuthority?: string;
    storageTypes?: Array<GermplasmStorageTypes>;
    subtaxa?: string;
    subtaxaAuthority?: string;
    synonyms?: Array<GermplasmNewRequestSynonyms>;
    taxonIds?: Array<TaxonId>;
    germplasmDbId?: string;
};

export type GermplasmSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Germplasm;
};

export type CrossingProjectNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    commonCropName?: string;
    crossingProjectDescription?: string;
    crossingProjectName?: string;
    programDbId?: string;
    programName?: string;
    potentialParents?: Array<CrossParent>;
};

export type CrossingProject = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    commonCropName?: string;
    crossingProjectDescription?: string;
    crossingProjectName?: string;
    programDbId?: string;
    programName?: string;
    potentialParents?: Array<CrossParent>;
    crossingProjectDbId?: string;
};

export type CrossingProjectsSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: CrossingProject;
};

export type CrossNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    crossAttributes?: Array<CrossNewRequestCrossAttributes>;
    crossName?: string;
    crossType?: 'BIPARENTAL' | 'SELF' | 'OPEN_POLLINATED' | 'BULK' | 'BULK_SELFED' | 'BULK_OPEN_POLLINATED' | 'DOUBLE_HAPLOID';
    crossingProjectDbId?: string;
    crossingProjectName?: string;
    parent1?: CrossParent;
    parent2?: CrossParent;
    pollinationTimeStamp?: string;
    pollinationEvents?: Array<CrossPollinationEvents>;
    plannedCrossDbId?: string;
    plannedCrossName?: string;
};

export type CrossNewRequestCrossAttributes = {
    crossAttributeName?: string;
    crossAttributeValue?: string;
};

export type CrossPollinationEvents = {
    pollinationNumber?: string;
    pollinationSuccessful?: boolean;
    pollinationTimeStamp?: string;
};

export type Cross = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    crossAttributes?: Array<CrossNewRequestCrossAttributes>;
    crossName?: string;
    crossType?: 'BIPARENTAL' | 'SELF' | 'OPEN_POLLINATED' | 'BULK' | 'BULK_SELFED' | 'BULK_OPEN_POLLINATED' | 'DOUBLE_HAPLOID';
    crossingProjectDbId?: string;
    crossingProjectName?: string;
    parent1?: CrossParent;
    parent2?: CrossParent;
    pollinationTimeStamp?: string;
    pollinationEvents?: Array<CrossPollinationEvents>;
    plannedCrossDbId?: string;
    plannedCrossName?: string;
    crossDbId?: string;
};

export type CrossesListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: CrossesListResponseResult;
};

export type CrossesListResponseResult = {
    data?: Array<Cross>;
};

export type Call = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    callSetDbId?: string;
    callSetName?: string;
    genotype?: ListValue;
    genotypeValue?: string;
    genotypeMetadata?: Array<CallGenotypeMetadata>;
    genotype_likelihood?: Array<number>;
    phaseSet?: string;
    variantDbId?: string;
    variantName?: string;
    variantSetDbId?: string;
    variantSetName?: string;
};

export type CallGenotypeMetadata = {
    dataType?: 'string' | 'integer' | 'float' | 'boolean';
    fieldAbbreviation?: string;
    fieldName?: string;
    fieldValue?: string;
};

export type ListValue = {
    values?: Array<string>;
};

export type CallsListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: CallsListResponseResult;
};

export type CallsListResponseResult = {
    data?: Array<Call>;
    expandHomozygotes?: boolean;
    sepPhased?: string;
    sepUnphased?: string;
    unknownString?: string;
};

export type GermplasmAttributeValueNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    attributeDbId?: string;
    attributeName?: string;
    determinedDate?: string;
    externalReferences?: Array<ExternalReferencesInner>;
    germplasmDbId?: string;
    germplasmName?: string;
    value?: string;
};

export type GermplasmAttributeValue = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    attributeDbId?: string;
    attributeName?: string;
    determinedDate?: string;
    externalReferences?: Array<ExternalReferencesInner>;
    germplasmDbId?: string;
    germplasmName?: string;
    value?: string;
    attributeValueDbId?: string;
};

export type GermplasmAttributeValueSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: GermplasmAttributeValue;
};

export type GermplasmAttributeNewRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    commonCropName?: string;
    contextOfUse?: Array<string>;
    defaultValue?: string;
    documentationURL?: string;
    growthStage?: string;
    institution?: string;
    language?: string;
    method?: Method;
    ontologyReference?: OntologyReference;
    scale?: Scale;
    scientist?: string;
    status?: string;
    submissionTimestamp?: string;
    synonyms?: Array<string>;
    trait?: Trait;
    attributeCategory?: string;
    attributeDescription?: string;
    attributeName?: string;
    attributePUI?: string;
};

export type GermplasmAttribute = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    commonCropName?: string;
    contextOfUse?: Array<string>;
    defaultValue?: string;
    documentationURL?: string;
    growthStage?: string;
    institution?: string;
    language?: string;
    method?: Method;
    ontologyReference?: OntologyReference;
    scale?: Scale;
    scientist?: string;
    status?: string;
    submissionTimestamp?: string;
    synonyms?: Array<string>;
    trait?: Trait;
    attributeCategory?: string;
    attributeDescription?: string;
    attributeName?: string;
    attributePUI?: string;
    attributeDbId?: string;
};

export type GermplasmAttributeSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: GermplasmAttribute;
};

export type Measurement = {
    units?: string;
    value?: number;
};

export type VendorPlateSubmissionRequest = {
    clientId?: string;
    numberOfSamples?: number;
    plates?: Array<VendorPlateSubmissionRequestPlates>;
    sampleType?: 'DNA' | 'RNA' | 'Tissue';
};

export type VendorPlateSubmissionRequestPlates = {
    clientPlateBarcode?: string;
    clientPlateId?: string;
    sampleSubmissionFormat?: 'PLATE_96' | 'TUBES';
    samples?: Array<VendorSample>;
};

export type VendorSample = {
    clientSampleBarCode?: string;
    clientSampleId?: string;
    column?: number;
    comments?: string;
    concentration?: Measurement;
    organismName?: string;
    row?: string;
    speciesName?: string;
    taxonomyOntologyReference?: OntologyReference;
    tissueType?: string;
    tissueTypeOntologyReference?: OntologyReference;
    volume?: Measurement;
    well?: string;
};

export type VendorPlateSubmissionId = {
    submissionId?: string;
};

export type VendorPlateSubmissionIdSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VendorPlateSubmissionId;
};

export type VendorOrderSubmissionRequest = {
    clientId?: string;
    numberOfSamples?: number;
    plates?: Array<VendorPlateSubmissionRequestPlates>;
    sampleType?: 'DNA' | 'RNA' | 'Tissue';
    requiredServiceInfo?: {
        [key: string]: string;
    };
    serviceIds?: Array<string>;
};

export type ShipmentForm = {
    fileDescription?: string;
    fileName?: string;
    fileURL?: string;
};

export type VendorOrderSubmission = {
    orderId?: string;
    shipmentForms?: Array<ShipmentForm>;
};

export type VendorOrderSubmissionSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VendorOrderSubmission;
};

export type VariantSetsExtractRequest = {
    callSetDbIds?: Array<string>;
    expandHomozygotes?: boolean;
    sepPhased?: string;
    sepUnphased?: string;
    unknownString?: string;
    variantDbIds?: Array<string>;
    variantSetDbIds?: Array<string>;
};

export type Analysis = {
    analysisDbId?: string;
    analysisName?: string;
    created?: string;
    description?: string;
    software?: Array<string>;
    type?: string;
    updated?: string;
};

export type VariantSet = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    analysis?: Array<Analysis>;
    availableFormats?: Array<VariantSetAvailableFormats>;
    callSetCount?: number;
    referenceSetDbId?: string;
    studyDbId?: string;
    variantCount?: number;
    variantSetDbId?: string;
    variantSetName?: string;
    metadataFields?: Array<VariantSetMetadataFields>;
};

export type VariantSetAvailableFormats = {
    dataFormat?: 'DartSeq' | 'VCF' | 'Hapmap' | 'tabular' | 'JSON';
    fileFormat?: 'application/json' | 'text/csv' | 'text/tsv' | 'application/flapjack' | 'application/excel' | 'application/zip';
    fileURL?: string;
    expandHomozygotes?: boolean;
    sepPhased?: string;
    sepUnphased?: string;
    unknownString?: string;
};

export type VariantSetMetadataFields = {
    dataType?: 'string' | 'integer' | 'float' | 'boolean';
    fieldAbbreviation?: string;
    fieldName?: string;
};

export type VariantSetResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VariantSet;
};

export type ObservationVariableListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ObservationVariableListResponseResult;
};

export type ObservationVariableListResponseResult = {
    data?: Array<ObservationVariable>;
};

export type TrialListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: TrialListResponseResult;
};

export type TrialListResponseResult = {
    data?: Array<Trial>;
};

export type TraitListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: TraitListResponseResult;
};

export type TraitListResponseResult = {
    data?: Array<Trait>;
};

export type StudyListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: StudyListResponseResult;
};

export type StudyListResponseResult = {
    data?: Array<Study>;
};

export type SeedLotListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: SeedLotListResponseResult;
};

export type SeedLotListResponseResult = {
    data?: Array<SeedLot>;
};

export type SeedLotNewTransactionRequest = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    amount?: number;
    fromSeedLotDbId?: string;
    toSeedLotDbId?: string;
    transactionDescription?: string;
    transactionTimestamp?: string;
    units?: string;
};

export type SeedLotTransaction = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    amount?: number;
    fromSeedLotDbId?: string;
    toSeedLotDbId?: string;
    transactionDescription?: string;
    transactionTimestamp?: string;
    units?: string;
    transactionDbId?: string;
};

export type SeedLotTransactionListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: SeedLotTransactionListResponseResult;
};

export type SeedLotTransactionListResponseResult = {
    data?: Array<SeedLotTransaction>;
};

export type SeasonListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: SeasonListResponseResult;
};

export type SeasonListResponseResult = {
    data?: Array<Season>;
};

export type VariantSetsSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    callSetDbIds?: Array<string>;
    commonCropNames?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    referenceDbIds?: Array<string>;
    referenceSetDbIds?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
    variantDbIds?: Array<string>;
    variantSetDbIds?: Array<string>;
};

export type BrApiResponse = {
    metadata?: Metadata;
};

export type VariantsSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    callSetDbIds?: Array<string>;
    commonCropNames?: Array<string>;
    end?: number;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    referenceDbId?: string;
    referenceDbIds?: Array<string>;
    referenceSetDbIds?: Array<string>;
    start?: number;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
    variantDbIds?: Array<string>;
    variantSetDbIds?: Array<string>;
};

export type ObservationVariableSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    commonCropNames?: Array<string>;
    dataTypes?: Array<'Code' | 'Date' | 'Duration' | 'Nominal' | 'Numerical' | 'Ordinal' | 'Text'>;
    methodDbIds?: Array<string>;
    methodNames?: Array<string>;
    methodPUIs?: Array<string>;
    observationVariableDbIds?: Array<string>;
    observationVariableNames?: Array<string>;
    observationVariablePUIs?: Array<string>;
    observationUnitDbIds?: Array<string>;
    ontologyDbIds?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    scaleDbIds?: Array<string>;
    scaleNames?: Array<string>;
    scalePUIs?: Array<string>;
    studyDbId?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    traitAttributePUIs?: Array<string>;
    traitAttributes?: Array<string>;
    traitClasses?: Array<string>;
    traitDbIds?: Array<string>;
    traitEntities?: Array<string>;
    traitEntityPUIs?: Array<string>;
    traitNames?: Array<string>;
    traitPUIs?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
};

export type TrialSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    commonCropNames?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    locationDbIds?: Array<string>;
    locationNames?: Array<string>;
    active?: boolean;
    contactDbIds?: Array<string>;
    searchDateRangeEnd?: string;
    searchDateRangeStart?: string;
    trialPUIs?: Array<string>;
    sortBy?: 'studyDbId' | 'startDate' | 'endDate' | 'trialDbId' | 'trialName' | 'programDbId' | 'locationDbId' | 'seasonDbId' | 'studyType' | 'studyName' | 'studyLocation' | 'programName' | 'germplasmDbId' | 'observationVariableDbId';
    sortOrder?: 'ASC' | 'DESC';
};

export type StudySearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    commonCropNames?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    locationDbIds?: Array<string>;
    locationNames?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    observationVariableDbIds?: Array<string>;
    observationVariableNames?: Array<string>;
    active?: boolean;
    seasonDbIds?: Array<string>;
    sortBy?: 'studyDbId' | 'startDate' | 'endDate' | 'trialDbId' | 'trialName' | 'programDbId' | 'locationDbId' | 'seasonDbId' | 'studyType' | 'studyName' | 'studyLocation' | 'programName' | 'germplasmDbId' | 'observationVariableDbId';
    sortOrder?: 'ASC' | 'DESC';
    studyCodes?: Array<string>;
    studyPUIs?: Array<string>;
    studyTypes?: Array<string>;
};

export type SampleSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    commonCropNames?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    observationUnitDbIds?: Array<string>;
    plateDbIds?: Array<string>;
    plateNames?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    sampleDbIds?: Array<string>;
    sampleGroupDbIds?: Array<string>;
    sampleNames?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
};

export type ReferenceSetsSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    accessions?: Array<string>;
    assemblyPUIs?: Array<string>;
    commonCropNames?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    md5checksums?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    referenceSetDbIds?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
};

export type ReferencesSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    accessions?: Array<string>;
    isDerived?: boolean;
    maxLength?: number;
    md5checksums?: Array<string>;
    minLength?: number;
    referenceDbIds?: Array<string>;
    referenceSetDbIds?: Array<string>;
    commonCropNames?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
};

export type ProgramSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    abbreviations?: Array<string>;
    commonCropNames?: Array<string>;
    leadPersonDbIds?: Array<string>;
    leadPersonNames?: Array<string>;
    objectives?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    programTypes?: Array<'STANARD' | 'PROJECT'>;
};

export type PlateSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    commonCropNames?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    observationUnitDbIds?: Array<string>;
    plateBarcodes?: Array<string>;
    plateDbIds?: Array<string>;
    plateNames?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    sampleDbIds?: Array<string>;
    sampleGroupDbIds?: Array<string>;
    sampleNames?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
};

export type PersonSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    commonCropNames?: Array<string>;
    emailAddresses?: Array<string>;
    firstNames?: Array<string>;
    lastNames?: Array<string>;
    mailingAddresses?: Array<string>;
    middleNames?: Array<string>;
    personDbIds?: Array<string>;
    phoneNumbers?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    userIDs?: Array<string>;
};

export type PedigreeSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    accessionNumbers?: Array<string>;
    binomialNames?: Array<string>;
    collections?: Array<string>;
    commonCropNames?: Array<string>;
    familyCodes?: Array<string>;
    genus?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    germplasmPUIs?: Array<string>;
    includeFullTree?: boolean;
    includeParents?: boolean;
    includeProgeny?: boolean;
    includeSiblings?: boolean;
    instituteCodes?: Array<string>;
    pedigreeDepth?: number;
    progenyDepth?: number;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    species?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    synonyms?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
};

export type ObservationUnitSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    commonCropNames?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    seasonDbIds?: Array<string>;
    locationDbIds?: Array<string>;
    locationNames?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    observationVariableDbIds?: Array<string>;
    observationVariableNames?: Array<string>;
    observationVariablePUIs?: Array<string>;
    includeObservations?: boolean;
    observationLevelRelationships?: Array<ObservationUnitLevelRelationship>;
    observationLevels?: Array<ObservationUnitLevel>;
    observationUnitDbIds?: Array<string>;
    observationUnitNames?: Array<string>;
};

export type ObservationSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    commonCropNames?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    locationDbIds?: Array<string>;
    locationNames?: Array<string>;
    observationVariableDbIds?: Array<string>;
    observationVariableNames?: Array<string>;
    observationDbIds?: Array<string>;
    observationLevelRelationships?: Array<ObservationUnitLevelRelationship>;
    observationLevels?: Array<ObservationUnitLevel>;
    observationTimeStampRangeEnd?: string;
    observationTimeStampRangeStart?: string;
    observationUnitDbIds?: Array<string>;
    seasonDbIds?: Array<string>;
};

export type MarkerPositionSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    linkageGroupNames?: Array<string>;
    mapDbIds?: Array<string>;
    maxPosition?: number;
    minPosition?: number;
    variantDbIds?: Array<string>;
};

export type GeoJsonSearchArea = {
    geometry?: GeoJsonGeometry;
    type?: string;
};

export type LocationSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    commonCropNames?: Array<string>;
    parentLocationDbIds?: Array<string>;
    parentLocationNames?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    locationDbIds?: Array<string>;
    locationNames?: Array<string>;
    abbreviations?: Array<string>;
    altitudeMax?: number;
    altitudeMin?: number;
    coordinates?: GeoJsonSearchArea;
    countryCodes?: Array<string>;
    countryNames?: Array<string>;
    instituteAddresses?: Array<string>;
    instituteNames?: Array<string>;
    locationTypes?: Array<string>;
};

export type ListSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    dateCreatedRangeEnd?: string;
    dateCreatedRangeStart?: string;
    dateModifiedRangeEnd?: string;
    dateModifiedRangeStart?: string;
    listDbIds?: Array<string>;
    listNames?: Array<string>;
    listOwnerNames?: Array<string>;
    listOwnerPersonDbIds?: Array<string>;
    listSources?: Array<string>;
    programDbIds?: Array<string>;
    commonCropNames?: Array<string>;
    listType?: 'germplasm' | 'markers' | 'programs' | 'trials' | 'studies' | 'observationUnits' | 'observations' | 'observationVariables' | 'samples';
};

export type ImageSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    commonCropNames?: Array<string>;
    descriptiveOntologyTerms?: Array<string>;
    imageDbIds?: Array<string>;
    imageFileNames?: Array<string>;
    imageFileSizeMax?: number;
    imageFileSizeMin?: number;
    imageHeightMax?: number;
    imageHeightMin?: number;
    imageLocation?: GeoJsonSearchArea;
    imageNames?: Array<string>;
    imageTimeStampRangeEnd?: string;
    imageTimeStampRangeStart?: string;
    imageWidthMax?: number;
    imageWidthMin?: number;
    mimeTypes?: Array<string>;
    observationDbIds?: Array<string>;
    observationUnitDbIds?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
};

export type GermplasmSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    accessionNumbers?: Array<string>;
    binomialNames?: Array<string>;
    collections?: Array<string>;
    commonCropNames?: Array<string>;
    familyCodes?: Array<string>;
    genus?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    germplasmPUIs?: Array<string>;
    instituteCodes?: Array<string>;
    parentDbIds?: Array<string>;
    progenyDbIds?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    species?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    synonyms?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
};

export type CallSetsSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    callSetDbIds?: Array<string>;
    callSetNames?: Array<string>;
    sampleDbIds?: Array<string>;
    sampleNames?: Array<string>;
    variantSetDbIds?: Array<string>;
};

export type CallsSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    callSetDbIds?: Array<string>;
    expandHomozygotes?: boolean;
    sepPhased?: string;
    sepUnphased?: string;
    unknownString?: string;
    variantDbIds?: Array<string>;
    variantSetDbIds?: Array<string>;
};

export type GermplasmAttributeValueSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    attributeDbIds?: Array<string>;
    attributeNames?: Array<string>;
    attributeValueDbIds?: Array<string>;
    commonCropNames?: Array<string>;
    dataTypes?: Array<'Code' | 'Date' | 'Duration' | 'Nominal' | 'Numerical' | 'Ordinal' | 'Text'>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    methodDbIds?: Array<string>;
    ontologyDbIds?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    scaleDbIds?: Array<string>;
    traitClasses?: Array<string>;
    traitDbIds?: Array<string>;
};

export type GermplasmAttributeSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    attributeCategories?: Array<string>;
    attributeDbIds?: Array<string>;
    attributeNames?: Array<string>;
    attributePUIs?: Array<string>;
    commonCropNames?: Array<string>;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    dataTypes?: Array<'Code' | 'Date' | 'Duration' | 'Nominal' | 'Numerical' | 'Ordinal' | 'Text'>;
    methodDbIds?: Array<string>;
    methodNames?: Array<string>;
    methodPUIs?: Array<string>;
    ontologyDbIds?: Array<string>;
    programDbIds?: Array<string>;
    programNames?: Array<string>;
    scaleDbIds?: Array<string>;
    scaleNames?: Array<string>;
    scalePUIs?: Array<string>;
    studyDbId?: Array<string>;
    studyDbIds?: Array<string>;
    studyNames?: Array<string>;
    traitAttributePUIs?: Array<string>;
    traitAttributes?: Array<string>;
    traitClasses?: Array<string>;
    traitDbIds?: Array<string>;
    traitEntities?: Array<string>;
    traitEntityPUIs?: Array<string>;
    traitNames?: Array<string>;
    traitPUIs?: Array<string>;
    trialDbIds?: Array<string>;
    trialNames?: Array<string>;
};

export type AlleleMatrixSearchRequest = {
    externalReferenceIDs?: Array<string>;
    page?: number;
    pageSize?: number;
    pageToken?: string;
    externalReferenceIds?: Array<string>;
    externalReferenceSources?: Array<string>;
    callSetDbIds?: Array<string>;
    dataMatrixAbbreviations?: Array<string>;
    dataMatrixNames?: Array<string>;
    expandHomozygotes?: boolean;
    germplasmDbIds?: Array<string>;
    germplasmNames?: Array<string>;
    germplasmPUIs?: Array<string>;
    pagination?: Array<AlleleMatrixSearchRequestPagination>;
    positionRanges?: Array<string>;
    preview?: boolean;
    sampleDbIds?: Array<string>;
    sepPhased?: string;
    sepUnphased?: string;
    unknownString?: string;
    variantDbIds?: Array<string>;
    variantSetDbIds?: Array<string>;
};

export type AlleleMatrixSearchRequestPagination = {
    dimension?: 'CALLSETS' | 'VARIANTS';
    page?: number;
    pageSize?: number;
};

export type ScaleListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ScaleListResponseResult;
};

export type ScaleListResponseResult = {
    data?: Array<Scale>;
};

export type ProgramListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ProgramListResponseResult;
};

export type ProgramListResponseResult = {
    data?: Array<Program>;
};

export type PersonListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: PersonListResponseResult;
};

export type PersonListResponseResult = {
    data?: Array<Person>;
};

export type OntologyListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: OntologyListResponseResult;
};

export type OntologyListResponseResult = {
    data?: Array<Ontology>;
};

export type MethodListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: MethodListResponseResult;
};

export type MethodListResponseResult = {
    data?: Array<Method>;
};

export type LocationListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: LocationListResponseResult;
};

export type LocationListResponseResult = {
    data?: Array<Location>;
};

export type ListSummary = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    dateCreated?: string;
    dateModified?: string;
    externalReferences?: Array<ExternalReferencesInner>;
    listDescription?: string;
    listName?: string;
    listOwnerName?: string;
    listOwnerPersonDbId?: string;
    listSize?: number;
    listSource?: string;
    listType?: 'germplasm' | 'markers' | 'programs' | 'trials' | 'studies' | 'observationUnits' | 'observations' | 'observationVariables' | 'samples';
    listDbId?: string;
};

export type ListsListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ListsListResponseResult;
};

export type ListsListResponseResult = {
    data?: Array<ListSummary>;
};

export type ListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ListDetails;
};

export type ImageListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ImageListResponseResult;
};

export type ImageListResponseResult = {
    data?: Array<Image>;
};

export type GermplasmListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: GermplasmListResponseResult;
};

export type GermplasmListResponseResult = {
    data?: Array<Germplasm>;
};

export type ObservationDeleteResponse = {
    atContext?: Array<string>;
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ObservationDeleteResponseResult;
};

export type ObservationDeleteResponseResult = {
    observationDbIds?: Array<string>;
};

export type ImageDeleteResponse = {
    atContext?: Array<string>;
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ImageDeleteResponseResult;
};

export type ImageDeleteResponseResult = {
    imageDbIds?: Array<string>;
};

export type CrossingProjectsListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: CrossingProjectsListResponseResult;
};

export type CrossingProjectsListResponseResult = {
    data?: Array<CrossingProject>;
};

export type GermplasmAttributeValueListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: GermplasmAttributeValueListResponseResult;
};

export type GermplasmAttributeValueListResponseResult = {
    data?: Array<GermplasmAttributeValue>;
};

export type GermplasmAttributeListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: GermplasmAttributeListResponseResult;
};

export type GermplasmAttributeListResponseResult = {
    data?: Array<GermplasmAttribute>;
};

export type VendorContact = {
    vendorAddress?: string;
    vendorCity?: string;
    vendorContactName?: string;
    vendorCountry?: string;
    vendorDescription?: string;
    vendorEmail?: string;
    vendorName?: string;
    vendorPhone?: string;
    vendorURL?: string;
};

export type VendorSpecification = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    services?: Array<VendorSpecificationService>;
    vendorContact?: VendorContact;
};

export type VendorSpecificationService = {
    serviceDescription?: string;
    serviceId?: string;
    serviceName?: string;
    servicePlatformMarkerType?: 'FIXED' | 'DISCOVERABLE';
    servicePlatformName?: string;
    specificRequirements?: Array<VendorSpecificationServiceSpecificRequirements>;
};

export type VendorSpecificationServiceSpecificRequirements = {
    description?: string;
    key?: string;
};

export type VendorSpecificationSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VendorSpecification;
};

export type VendorPlateSubmission = {
    clientId?: string;
    numberOfSamples?: number;
    plates?: Array<VendorPlateSubmissionPlates>;
};

export type VendorPlateSubmissionPlates = {
    clientPlateBarcode?: string;
    clientPlateId?: string;
    sampleSubmissionFormat?: 'PLATE_96' | 'TUBES';
    samples?: Array<VendorSample>;
};

export type VendorPlateSubmissionSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VendorPlateSubmission;
};

export type VendorOrder = {
    clientId?: string;
    numberOfSamples?: number;
    orderId?: string;
    requiredServiceInfo?: {
        [key: string]: string;
    };
    serviceIds?: Array<string>;
};

export type VendorOrderListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VendorOrderListResponseResult;
};

export type VendorOrderListResponseResult = {
    data?: Array<VendorOrder>;
};

export type VendorOrderStatusResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VendorOrderStatusResponseResult;
};

export type VendorOrderStatusResponseResult = {
    status?: 'registered' | 'received' | 'inProgress' | 'completed' | 'rejected';
};

export type VendorResultFile = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    clientSampleIds?: Array<string>;
    fileName?: string;
    fileType?: string;
    fileURL?: string;
    md5sum?: string;
};

export type VendorResultFileListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VendorResultFileListResponseResult;
};

export type VendorResultFileListResponseResult = {
    data?: Array<VendorResultFile>;
};

export type VendorPlate = {
    clientPlateBarcode?: string;
    clientPlateId?: string;
    sampleSubmissionFormat?: 'PLATE_96' | 'TUBES';
    samples?: Array<VendorSample>;
};

export type VendorPlateListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VendorPlateListResponseResult;
};

export type VendorPlateListResponseResult = {
    data?: Array<VendorPlate>;
};

export type VariantSetsListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VariantSetsListResponseResult;
};

export type VariantSetsListResponseResult = {
    data?: Array<VariantSet>;
};

export type Variant = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    alternate_bases?: Array<string>;
    alternateBases?: Array<string>;
    ciend?: Array<number>;
    cipos?: Array<number>;
    created?: string;
    end?: number;
    filtersApplied?: boolean;
    filtersFailed?: Array<string>;
    filtersPassed?: boolean;
    referenceBases?: string;
    referenceName?: string;
    referenceDbId?: string;
    referenceSetName?: string;
    referenceSetDbId?: string;
    start?: number;
    svlen?: number;
    updated?: string;
    variantDbId?: string;
    variantNames?: Array<string>;
    variantSetDbId?: Array<string>;
    variantType?: string;
};

export type VariantsListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: VariantsListResponseResult;
};

export type VariantsListResponseResult = {
    data?: Array<Variant>;
};

export type CallSet = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    callSetDbId?: string;
    callSetName?: string;
    created?: string;
    sampleDbId?: string;
    studyDbId?: string;
    updated?: string;
    variantSetDbIds?: Array<string>;
};

export type CallSetsListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: CallSetsListResponseResult;
};

export type CallSetsListResponseResult = {
    data?: Array<CallSet>;
};

export type VariantSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Variant;
};

export type StudyTypesResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: StudyTypesResponseResult;
};

export type StudyTypesResponseResult = {
    data?: Array<string>;
};

export type ServerInfo = {
    calls?: Array<Service>;
    contactEmail?: string;
    documentationURL?: string;
    location?: string;
    organizationName?: string;
    organizationURL?: string;
    serverDescription?: string;
    serverName?: string;
};

export type ServerInfoResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ServerInfo;
};

export type Service = {
    dataTypes?: Array<'application/json' | 'text/csv' | 'text/tsv' | 'application/flapjack' | 'application/excel' | 'application/zip'>;
    contentTypes?: Array<'application/json' | 'text/csv' | 'text/tsv' | 'application/flapjack' | 'application/excel' | 'application/zip'>;
    methods?: Array<'GET' | 'POST' | 'PUT' | 'DELETE'>;
    service?: string;
    versions?: Array<'2.0' | '2.1' | '2.2'>;
};

export type OntologyTerm = {
    term?: string;
    termURI?: string;
};

export type ReferenceSet = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    assemblyPUI?: string;
    commonCropName?: string;
    description?: string;
    isDerived?: boolean;
    md5checksum?: string;
    referenceSetDbId?: string;
    referenceSetName?: string;
    sourceAccessions?: Array<string>;
    sourceGermplasm?: Array<ReferenceSourceGermplasm>;
    sourceURI?: string;
    species?: OntologyTerm;
};

export type ReferenceSetsListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ReferenceSetsListResponseResult;
};

export type ReferenceSetsListResponseResult = {
    data?: Array<ReferenceSet>;
};

export type ReferenceSourceGermplasm = {
    germplasmDbId?: string;
    germplasmName?: string;
};

export type ReferenceSetsSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ReferenceSet;
};

export type Reference = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    commonCropName?: string;
    isDerived?: boolean;
    length?: number;
    md5checksum?: string;
    referenceDbId?: string;
    referenceName?: string;
    referenceSetDbId?: string;
    referenceSetName?: string;
    sourceAccessions?: Array<string>;
    sourceDivergence?: number;
    sourceGermplasm?: Array<ReferenceSourceGermplasm>;
    sourceURI?: string;
    species?: OntologyTerm;
};

export type ReferencesListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ReferencesListResponseResult;
};

export type ReferencesListResponseResult = {
    data?: Array<Reference>;
};

export type ReferenceSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Reference;
};

export type ReferenceBases = {
    nextPageToken?: string;
    offset?: number;
    sequence?: string;
};

export type ReferenceBasesResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ReferenceBases;
};

export type PlateSingleResponse = {
    atContext?: Array<string>;
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: Plate;
};

export type ObservationLevelListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ObservationLevelListResponseResult;
};

export type ObservationLevelListResponseResult = {
    data?: Array<ObservationUnitHierarchyLevel>;
};

export type MarkerPosition = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    linkageGroupName?: string;
    mapDbId?: string;
    mapName?: string;
    position?: number;
    variantDbId?: string;
    variantName?: string;
};

export type MarkerPositionsListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: MarkerPositionsListResponseResult;
};

export type MarkerPositionsListResponseResult = {
    data?: Array<MarkerPosition>;
};

export type GenomeMap = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    comments?: string;
    commonCropName?: string;
    documentationURL?: string;
    linkageGroupCount?: number;
    mapDbId?: string;
    mapName?: string;
    mapPUI?: string;
    markerCount?: number;
    publishedDate?: string;
    scientificName?: string;
    type?: string;
    unit?: string;
};

export type GenomeMapListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: GenomeMapListResponseResult;
};

export type GenomeMapListResponseResult = {
    data?: Array<GenomeMap>;
};

export type GenomeMapSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: GenomeMap;
};

export type LinkageGroup = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    linkageGroupName?: string;
    markerCount?: number;
    maxPosition?: number;
};

export type LinkageGroupListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: LinkageGroupListResponseResult;
};

export type LinkageGroupListResponseResult = {
    data?: Array<LinkageGroup>;
};

export type GermplasmProgenyResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: ProgenyNode;
};

export type ProgenyNode = {
    germplasmDbId?: string;
    germplasmName?: string;
    progeny?: Array<ProgenyNodeProgeny>;
};

export type ProgenyNodeProgeny = {
    germplasmDbId?: string;
    germplasmName?: string;
    parentType?: 'MALE' | 'FEMALE' | 'SELF' | 'POPULATION' | 'CLONAL';
};

export type GermplasmPedigreeResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: PedigreeNode;
};

export type GermplasmMcpd = {
    accessionNames?: Array<string>;
    accessionNumber?: string;
    acquisitionDate?: string;
    acquisitionSourceCode?: '10' | '11' | '12' | '13' | '14' | '15' | '20' | '21' | '22' | '23' | '24' | '25' | '26' | '27' | '28' | '30' | '40' | '50' | '60' | '61' | '62' | '99';
    alternateIDs?: Array<string>;
    ancestralData?: string;
    biologicalStatusOfAccessionCode?: '100' | '110' | '120' | '130' | '200' | '300' | '400' | '410' | '411' | '412' | '413' | '414' | '415' | '416' | '420' | '421' | '422' | '423' | '500' | '600' | '999';
    breedingInstitutes?: Array<GermplasmMcpdBreedingInstitutes>;
    collectingInfo?: GermplasmMcpdCollectingInfo;
    commonCropName?: string;
    countryOfOrigin?: string;
    donorInfo?: GermplasmMcpdDonorInfo;
    genus?: string;
    germplasmDbId?: string;
    germplasmPUI?: string;
    instituteCode?: string;
    mlsStatus?: '' | '0' | '1' | '99';
    remarks?: string;
    safetyDuplicateInstitutes?: Array<GermplasmMcpdSafetyDuplicateInstitutes>;
    species?: string;
    speciesAuthority?: string;
    storageTypeCodes?: Array<'10' | '11' | '12' | '13' | '20' | '30' | '40' | '50' | '99'>;
    subtaxon?: string;
    subtaxonAuthority?: string;
};

export type GermplasmMcpdBreedingInstitutes = {
    instituteCode?: string;
    instituteName?: string;
};

export type GermplasmMcpdCollectingInfo = {
    collectingDate?: string;
    collectingInstitutes?: Array<GermplasmMcpdCollectingInfoCollectingInstitutes>;
    collectingMissionIdentifier?: string;
    collectingNumber?: string;
    collectingSite?: GermplasmMcpdCollectingInfoCollectingSite;
};

export type GermplasmMcpdCollectingInfoCollectingInstitutes = {
    instituteAddress?: string;
    instituteCode?: string;
    instituteName?: string;
};

export type GermplasmMcpdCollectingInfoCollectingSite = {
    coordinateUncertainty?: string;
    elevation?: string;
    georeferencingMethod?: string;
    latitudeDecimal?: string;
    latitudeDegrees?: string;
    locationDescription?: string;
    longitudeDecimal?: string;
    longitudeDegrees?: string;
    spatialReferenceSystem?: string;
};

export type GermplasmMcpdDonorInfo = {
    donorAccessionNumber?: string;
    donorAccessionPui?: string;
    donorInstitute?: GermplasmMcpdDonorInfoDonorInstitute;
};

export type GermplasmMcpdDonorInfoDonorInstitute = {
    instituteCode?: string;
    instituteName?: string;
};

export type GermplasmMcpdResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: GermplasmMcpd;
};

export type GermplasmMcpdSafetyDuplicateInstitutes = {
    instituteCode?: string;
    instituteName?: string;
};

export type Event = {
    additionalInfo?: {
        [key: string]: {
            [key: string]: unknown;
        };
    };
    externalReferences?: Array<ExternalReferencesInner>;
    date?: Array<string>;
    eventDateRange?: EventDateRange;
    eventDbId?: string;
    eventDescription?: string;
    eventParameters?: Array<EventParameters>;
    eventType?: string;
    eventTypeDbId?: string;
    observationUnitDbIds?: Array<string>;
    studyDbId?: string;
    studyName?: string;
};

export type EventDateRange = {
    discreteDates?: Array<string>;
    endDate?: string;
    startDate?: string;
};

export type EventParameters = {
    code?: string;
    description?: string;
    key?: string;
    name?: string;
    rdfValue?: string;
    units?: string;
    value?: string;
    valueDescription?: string;
    valuesByDate?: Array<string>;
};

export type EventsResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: EventsResponseResult;
};

export type EventsResponseResult = {
    data?: Array<Event>;
};

export type CommonCropNamesResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: CommonCropNamesResponseResult;
};

export type CommonCropNamesResponseResult = {
    data?: Array<string>;
};

export type CallSetResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: CallSet;
};

export type BreedingMethod = {
    abbreviation?: string;
    breedingMethodDbId?: string;
    breedingMethodName?: string;
    description?: string;
};

export type BreedingMethodListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: BreedingMethodListResponseResult;
};

export type BreedingMethodListResponseResult = {
    data?: Array<BreedingMethod>;
};

export type BreedingMethodSingleResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: BreedingMethod;
};

export type GermplasmAttributeCategoryListResponse = {
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: GermplasmAttributeCategoryListResponseResult;
};

export type GermplasmAttributeCategoryListResponseResult = {
    data?: Array<string>;
};

export type AlleleMatrix = {
    callSetDbIds?: Array<string>;
    dataMatrices?: Array<AlleleMatrixDataMatrices>;
    expandHomozygotes?: boolean;
    pagination?: Array<AlleleMatrixPagination>;
    sepPhased?: string;
    sepUnphased?: string;
    unknownString?: string;
    variantDbIds?: Array<string>;
    variantSetDbIds?: Array<string>;
};

export type AlleleMatrixDataMatrices = {
    dataMatrix?: Array<Array<string>>;
    dataMatrixAbbreviation?: string;
    dataMatrixName?: string;
    dataType?: 'string' | 'integer' | 'float' | 'boolean';
};

export type AlleleMatrixPagination = {
    pageSize?: number;
    totalCount?: number;
    totalPages?: number;
    dimension?: 'CALLSETS' | 'VARIANTS';
    page?: number;
};

export type AlleleMatrixResponse = {
    atContext?: Array<string>;
    '@context'?: Array<string>;
    metadata?: Metadata;
    result?: AlleleMatrix;
};

export type BrApiResponseWritable = {
    metadata?: Metadata;
    _atContext?: Array<string>;
};

export type VariablesObservationVariableDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        observationVariableDbId: string;
    };
    query?: never;
    url: '/variables/{observationVariableDbId}';
};

export type VariablesObservationVariableDbIdGetResponses = {
    /**
     * OK
     */
    200: ObservationVariableSingleResponse;
};

export type VariablesObservationVariableDbIdGetResponse = VariablesObservationVariableDbIdGetResponses[keyof VariablesObservationVariableDbIdGetResponses];

export type VariablesObservationVariableDbIdPutData = {
    body: ObservationVariableNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        observationVariableDbId: string;
    };
    query?: never;
    url: '/variables/{observationVariableDbId}';
};

export type VariablesObservationVariableDbIdPutResponses = {
    /**
     * OK
     */
    200: ObservationVariableSingleResponse;
};

export type VariablesObservationVariableDbIdPutResponse = VariablesObservationVariableDbIdPutResponses[keyof VariablesObservationVariableDbIdPutResponses];

export type TrialsTrialDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        trialDbId: string;
    };
    query?: never;
    url: '/trials/{trialDbId}';
};

export type TrialsTrialDbIdGetResponses = {
    /**
     * OK
     */
    200: TrialSingleResponse;
};

export type TrialsTrialDbIdGetResponse = TrialsTrialDbIdGetResponses[keyof TrialsTrialDbIdGetResponses];

export type TrialsTrialDbIdPutData = {
    body: TrialNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        trialDbId: string;
    };
    query?: never;
    url: '/trials/{trialDbId}';
};

export type TrialsTrialDbIdPutResponses = {
    /**
     * OK
     */
    200: TrialSingleResponse;
};

export type TrialsTrialDbIdPutResponse = TrialsTrialDbIdPutResponses[keyof TrialsTrialDbIdPutResponses];

export type TraitsTraitDbIdDeleteData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        traitDbId: string;
    };
    query?: never;
    url: '/traits/{traitDbId}';
};

export type TraitsTraitDbIdDeleteErrors = {
    /**
     * Unauthorized
     */
    401: unknown;
    /**
     * Forbidden
     */
    403: unknown;
    /**
     * Not Found
     */
    404: unknown;
    /**
     * Conflict
     */
    409: unknown;
};

export type TraitsTraitDbIdDeleteResponses = {
    /**
     * OK
     */
    200: TraitSingleResponse;
};

export type TraitsTraitDbIdDeleteResponse = TraitsTraitDbIdDeleteResponses[keyof TraitsTraitDbIdDeleteResponses];

export type TraitsTraitDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        traitDbId: string;
    };
    query?: never;
    url: '/traits/{traitDbId}';
};

export type TraitsTraitDbIdGetResponses = {
    /**
     * OK
     */
    200: TraitSingleResponse;
};

export type TraitsTraitDbIdGetResponse = TraitsTraitDbIdGetResponses[keyof TraitsTraitDbIdGetResponses];

export type TraitsTraitDbIdPutData = {
    body: TraitBaseClass;
    headers?: {
        Authorization?: string;
    };
    path: {
        traitDbId: string;
    };
    query?: never;
    url: '/traits/{traitDbId}';
};

export type TraitsTraitDbIdPutResponses = {
    /**
     * OK
     */
    200: TraitSingleResponse;
};

export type TraitsTraitDbIdPutResponse = TraitsTraitDbIdPutResponses[keyof TraitsTraitDbIdPutResponses];

export type StudiesStudyDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        studyDbId: string;
    };
    query?: never;
    url: '/studies/{studyDbId}';
};

export type StudiesStudyDbIdGetResponses = {
    /**
     * OK
     */
    200: StudySingleResponse;
};

export type StudiesStudyDbIdGetResponse = StudiesStudyDbIdGetResponses[keyof StudiesStudyDbIdGetResponses];

export type StudiesStudyDbIdPutData = {
    body: StudyNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        studyDbId: string;
    };
    query?: never;
    url: '/studies/{studyDbId}';
};

export type StudiesStudyDbIdPutResponses = {
    /**
     * OK
     */
    200: StudySingleResponse;
};

export type StudiesStudyDbIdPutResponse = StudiesStudyDbIdPutResponses[keyof StudiesStudyDbIdPutResponses];

export type SeedlotsSeedLotDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        seedLotDbId: string;
    };
    query?: never;
    url: '/seedlots/{seedLotDbId}';
};

export type SeedlotsSeedLotDbIdGetResponses = {
    /**
     * OK
     */
    200: SeedLotSingleResponse;
};

export type SeedlotsSeedLotDbIdGetResponse = SeedlotsSeedLotDbIdGetResponses[keyof SeedlotsSeedLotDbIdGetResponses];

export type SeedlotsSeedLotDbIdPutData = {
    body: SeedLotNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        seedLotDbId: string;
    };
    query?: never;
    url: '/seedlots/{seedLotDbId}';
};

export type SeedlotsSeedLotDbIdPutResponses = {
    /**
     * OK
     */
    200: SeedLotSingleResponse;
};

export type SeedlotsSeedLotDbIdPutResponse = SeedlotsSeedLotDbIdPutResponses[keyof SeedlotsSeedLotDbIdPutResponses];

export type SeasonsSeasonDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        seasonDbId: string;
    };
    query?: never;
    url: '/seasons/{seasonDbId}';
};

export type SeasonsSeasonDbIdGetResponses = {
    /**
     * OK
     */
    200: SeasonSingleResponse;
};

export type SeasonsSeasonDbIdGetResponse = SeasonsSeasonDbIdGetResponses[keyof SeasonsSeasonDbIdGetResponses];

export type SeasonsSeasonDbIdPutData = {
    body: Season;
    headers?: {
        Authorization?: string;
    };
    path: {
        seasonDbId: string;
    };
    query?: never;
    url: '/seasons/{seasonDbId}';
};

export type SeasonsSeasonDbIdPutResponses = {
    /**
     * OK
     */
    200: SeasonSingleResponse;
};

export type SeasonsSeasonDbIdPutResponse = SeasonsSeasonDbIdPutResponses[keyof SeasonsSeasonDbIdPutResponses];

export type ScalesScaleDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        scaleDbId: string;
    };
    query?: never;
    url: '/scales/{scaleDbId}';
};

export type ScalesScaleDbIdGetResponses = {
    /**
     * OK
     */
    200: ScaleSingleResponse;
};

export type ScalesScaleDbIdGetResponse = ScalesScaleDbIdGetResponses[keyof ScalesScaleDbIdGetResponses];

export type ScalesScaleDbIdPutData = {
    body: ScaleBaseClass;
    headers?: {
        Authorization?: string;
    };
    path: {
        scaleDbId: string;
    };
    query?: never;
    url: '/scales/{scaleDbId}';
};

export type ScalesScaleDbIdPutResponses = {
    /**
     * OK
     */
    200: ScaleSingleResponse;
};

export type ScalesScaleDbIdPutResponse = ScalesScaleDbIdPutResponses[keyof ScalesScaleDbIdPutResponses];

export type SamplesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        sampleDbId?: string;
        sampleName?: string;
        sampleGroupDbId?: string;
        observationUnitDbId?: string;
        plateDbId?: string;
        plateName?: string;
        germplasmDbId?: string;
        studyDbId?: string;
        trialDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceID?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/samples';
};

export type SamplesGetResponses = {
    /**
     * OK
     */
    200: SampleListResponse;
};

export type SamplesGetResponse = SamplesGetResponses[keyof SamplesGetResponses];

export type SamplesPostData = {
    body: Array<SampleNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/samples';
};

export type SamplesPostResponses = {
    /**
     * OK
     */
    200: SampleListResponse;
};

export type SamplesPostResponse = SamplesPostResponses[keyof SamplesPostResponses];

export type SamplesPutData = {
    body: {
        [key: string]: SampleNewRequest;
    };
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/samples';
};

export type SamplesPutResponses = {
    /**
     * OK
     */
    200: SampleListResponse;
};

export type SamplesPutResponse = SamplesPutResponses[keyof SamplesPutResponses];

export type SamplesSampleDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        sampleDbId: string;
    };
    query?: never;
    url: '/samples/{sampleDbId}';
};

export type SamplesSampleDbIdGetResponses = {
    /**
     * OK
     */
    200: SampleSingleResponse;
};

export type SamplesSampleDbIdGetResponse = SamplesSampleDbIdGetResponses[keyof SamplesSampleDbIdGetResponses];

export type SamplesSampleDbIdPutData = {
    body: SampleNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        sampleDbId: string;
    };
    query?: never;
    url: '/samples/{sampleDbId}';
};

export type SamplesSampleDbIdPutResponses = {
    /**
     * OK
     */
    200: SampleSingleResponse;
};

export type SamplesSampleDbIdPutResponse = SamplesSampleDbIdPutResponses[keyof SamplesSampleDbIdPutResponses];

export type ProgramsProgramDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        programDbId: string;
    };
    query?: never;
    url: '/programs/{programDbId}';
};

export type ProgramsProgramDbIdGetResponses = {
    /**
     * OK
     */
    200: ProgramSingleResponse;
};

export type ProgramsProgramDbIdGetResponse = ProgramsProgramDbIdGetResponses[keyof ProgramsProgramDbIdGetResponses];

export type ProgramsProgramDbIdPutData = {
    body: ProgramNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        programDbId: string;
    };
    query?: never;
    url: '/programs/{programDbId}';
};

export type ProgramsProgramDbIdPutResponses = {
    /**
     * OK
     */
    200: ProgramSingleResponse;
};

export type ProgramsProgramDbIdPutResponse = ProgramsProgramDbIdPutResponses[keyof ProgramsProgramDbIdPutResponses];

export type PlatesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        sampleDbId?: string;
        sampleName?: string;
        sampleGroupDbId?: string;
        observationUnitDbId?: string;
        plateDbId?: string;
        plateName?: string;
        germplasmDbId?: string;
        studyDbId?: string;
        trialDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/plates';
};

export type PlatesGetResponses = {
    /**
     * OK
     */
    200: PlateListResponse;
};

export type PlatesGetResponse = PlatesGetResponses[keyof PlatesGetResponses];

export type PlatesPostData = {
    body: Array<PlateNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/plates';
};

export type PlatesPostResponses = {
    /**
     * OK
     */
    200: PlateListResponse;
};

export type PlatesPostResponse = PlatesPostResponses[keyof PlatesPostResponses];

export type PlatesPutData = {
    body: {
        [key: string]: PlateNewRequest;
    };
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/plates';
};

export type PlatesPutResponses = {
    /**
     * OK
     */
    200: PlateListResponse;
};

export type PlatesPutResponse = PlatesPutResponses[keyof PlatesPutResponses];

export type PlannedCrossesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        crossingProjectDbId?: string;
        crossingProjectName?: string;
        plannedCrossDbId?: string;
        plannedCrossName?: string;
        status?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/plannedcrosses';
};

export type PlannedCrossesGetResponses = {
    /**
     * OK
     */
    200: PlannedCrossesListResponse;
};

export type PlannedCrossesGetResponse = PlannedCrossesGetResponses[keyof PlannedCrossesGetResponses];

export type PlannedCrossesPostData = {
    body: Array<PlannedCrossNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/plannedcrosses';
};

export type PlannedCrossesPostResponses = {
    /**
     * OK
     */
    200: PlannedCrossesListResponse;
};

export type PlannedCrossesPostResponse = PlannedCrossesPostResponses[keyof PlannedCrossesPostResponses];

export type PlannedCrossesPutData = {
    body: {
        [key: string]: PlannedCrossNewRequest;
    };
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/plannedcrosses';
};

export type PlannedCrossesPutResponses = {
    /**
     * OK
     */
    200: PlannedCrossesListResponse;
};

export type PlannedCrossesPutResponse = PlannedCrossesPutResponses[keyof PlannedCrossesPutResponses];

export type PeoplePersonDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        personDbId: string;
    };
    query?: never;
    url: '/people/{personDbId}';
};

export type PeoplePersonDbIdGetResponses = {
    /**
     * OK
     */
    200: PersonSingleResponse;
};

export type PeoplePersonDbIdGetResponse = PeoplePersonDbIdGetResponses[keyof PeoplePersonDbIdGetResponses];

export type PeoplePersonDbIdPutData = {
    body: PersonNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        personDbId: string;
    };
    query?: never;
    url: '/people/{personDbId}';
};

export type PeoplePersonDbIdPutResponses = {
    /**
     * OK
     */
    200: PersonSingleResponse;
};

export type PeoplePersonDbIdPutResponse = PeoplePersonDbIdPutResponses[keyof PeoplePersonDbIdPutResponses];

export type PedigreeGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        germplasmPUI?: string;
        germplasmDbId?: string;
        germplasmName?: string;
        accessionNumber?: string;
        collection?: string;
        familyCode?: string;
        binomialName?: string;
        genus?: string;
        species?: string;
        trialDbId?: string;
        studyDbId?: string;
        synonym?: string;
        includeParents?: boolean;
        includeSiblings?: boolean;
        includeProgeny?: boolean;
        includeFullTree?: boolean;
        pedigreeDepth?: number;
        progenyDepth?: number;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/pedigree';
};

export type PedigreeGetResponses = {
    /**
     * OK
     */
    200: PedigreeListResponse;
};

export type PedigreeGetResponse = PedigreeGetResponses[keyof PedigreeGetResponses];

export type PedigreePostData = {
    body: Array<PedigreeNode>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/pedigree';
};

export type PedigreePostResponses = {
    /**
     * OK
     */
    200: PedigreeListResponse;
};

export type PedigreePostResponse = PedigreePostResponses[keyof PedigreePostResponses];

export type PedigreePutData = {
    body: {
        [key: string]: PedigreeNode;
    };
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/pedigree';
};

export type PedigreePutResponses = {
    /**
     * OK
     */
    200: PedigreeListResponse;
};

export type PedigreePutResponse = PedigreePutResponses[keyof PedigreePutResponses];

export type OntologiesOntologyDbIdDeleteData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        ontologyDbId: string;
    };
    query?: never;
    url: '/ontologies/{ontologyDbId}';
};

export type OntologiesOntologyDbIdDeleteErrors = {
    /**
     * Unauthorized
     */
    401: unknown;
    /**
     * Forbidden
     */
    403: unknown;
    /**
     * Not Found
     */
    404: unknown;
    /**
     * Conflict
     */
    409: unknown;
};

export type OntologiesOntologyDbIdDeleteResponses = {
    /**
     * OK
     */
    200: OntologySingleResponse;
};

export type OntologiesOntologyDbIdDeleteResponse = OntologiesOntologyDbIdDeleteResponses[keyof OntologiesOntologyDbIdDeleteResponses];

export type OntologiesOntologyDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        ontologyDbId: string;
    };
    query?: never;
    url: '/ontologies/{ontologyDbId}';
};

export type OntologiesOntologyDbIdGetResponses = {
    /**
     * OK
     */
    200: OntologySingleResponse;
};

export type OntologiesOntologyDbIdGetResponse = OntologiesOntologyDbIdGetResponses[keyof OntologiesOntologyDbIdGetResponses];

export type OntologiesOntologyDbIdPutData = {
    body: OntologyNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        ontologyDbId: string;
    };
    query?: never;
    url: '/ontologies/{ontologyDbId}';
};

export type OntologiesOntologyDbIdPutResponses = {
    /**
     * OK
     */
    200: OntologySingleResponse;
};

export type OntologiesOntologyDbIdPutResponse = OntologiesOntologyDbIdPutResponses[keyof OntologiesOntologyDbIdPutResponses];

export type ObservationunitsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        observationUnitDbId?: string;
        observationUnitName?: string;
        germplasmDbId?: string;
        studyDbId?: string;
        locationDbId?: string;
        trialDbId?: string;
        seasonDbId?: string;
        includeObservations?: boolean;
        observationUnitLevelName?: string;
        observationUnitLevelOrder?: string;
        observationUnitLevelCode?: string;
        observationUnitLevelRelationshipName?: string;
        observationUnitLevelRelationshipOrder?: string;
        observationUnitLevelRelationshipCode?: string;
        observationUnitLevelRelationshipDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/observationunits';
};

export type ObservationunitsGetResponses = {
    /**
     * OK
     */
    200: ObservationUnitListResponse;
};

export type ObservationunitsGetResponse = ObservationunitsGetResponses[keyof ObservationunitsGetResponses];

export type ObservationunitsPostData = {
    body: Array<ObservationUnitNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/observationunits';
};

export type ObservationunitsPostResponses = {
    /**
     * OK
     */
    200: ObservationUnitListResponse;
};

export type ObservationunitsPostResponse = ObservationunitsPostResponses[keyof ObservationunitsPostResponses];

export type ObservationunitsPutData = {
    body: {
        [key: string]: ObservationUnitNewRequest;
    };
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/observationunits';
};

export type ObservationunitsPutResponses = {
    /**
     * OK
     */
    200: ObservationUnitListResponse;
};

export type ObservationunitsPutResponse = ObservationunitsPutResponses[keyof ObservationunitsPutResponses];

export type ObservationunitsObservationUnitDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        observationUnitDbId: string;
    };
    query?: never;
    url: '/observationunits/{observationUnitDbId}';
};

export type ObservationunitsObservationUnitDbIdGetResponses = {
    /**
     * OK
     */
    200: ObservationUnitSingleResponse;
};

export type ObservationunitsObservationUnitDbIdGetResponse = ObservationunitsObservationUnitDbIdGetResponses[keyof ObservationunitsObservationUnitDbIdGetResponses];

export type ObservationunitsObservationUnitDbIdPutData = {
    body: ObservationUnitNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        observationUnitDbId: string;
    };
    query?: never;
    url: '/observationunits/{observationUnitDbId}';
};

export type ObservationunitsObservationUnitDbIdPutResponses = {
    /**
     * OK
     */
    200: ObservationUnitSingleResponse;
};

export type ObservationunitsObservationUnitDbIdPutResponse = ObservationunitsObservationUnitDbIdPutResponses[keyof ObservationunitsObservationUnitDbIdPutResponses];

export type ObservationsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        observationDbId?: string;
        observationUnitDbId?: string;
        germplasmDbId?: string;
        observationVariableDbId?: string;
        studyDbId?: string;
        locationDbId?: string;
        trialDbId?: string;
        seasonDbId?: string;
        observationTimeStampRangeStart?: string;
        observationTimeStampRangeEnd?: string;
        observationUnitLevelName?: string;
        observationUnitLevelOrder?: string;
        observationUnitLevelCode?: string;
        observationUnitLevelRelationshipName?: string;
        observationUnitLevelRelationshipOrder?: string;
        observationUnitLevelRelationshipCode?: string;
        observationUnitLevelRelationshipDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/observations';
};

export type ObservationsGetResponses = {
    /**
     * OK
     */
    200: ObservationListResponse;
};

export type ObservationsGetResponse = ObservationsGetResponses[keyof ObservationsGetResponses];

export type ObservationsPostData = {
    body: Array<ObservationNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/observations';
};

export type ObservationsPostResponses = {
    /**
     * OK
     */
    200: ObservationListResponse;
};

export type ObservationsPostResponse = ObservationsPostResponses[keyof ObservationsPostResponses];

export type ObservationsPutData = {
    body: {
        [key: string]: ObservationNewRequest;
    };
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/observations';
};

export type ObservationsPutResponses = {
    /**
     * OK
     */
    200: ObservationListResponse;
};

export type ObservationsPutResponse = ObservationsPutResponses[keyof ObservationsPutResponses];

export type ObservationsObservationDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        observationDbId: string;
    };
    query?: never;
    url: '/observations/{observationDbId}';
};

export type ObservationsObservationDbIdGetResponses = {
    /**
     * OK
     */
    200: ObservationSingleResponse;
};

export type ObservationsObservationDbIdGetResponse = ObservationsObservationDbIdGetResponses[keyof ObservationsObservationDbIdGetResponses];

export type ObservationsObservationDbIdPutData = {
    body: ObservationNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        observationDbId: string;
    };
    query?: never;
    url: '/observations/{observationDbId}';
};

export type ObservationsObservationDbIdPutResponses = {
    /**
     * OK
     */
    200: ObservationSingleResponse;
};

export type ObservationsObservationDbIdPutResponse = ObservationsObservationDbIdPutResponses[keyof ObservationsObservationDbIdPutResponses];

export type MethodsMethodDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        methodDbId: string;
    };
    query?: never;
    url: '/methods/{methodDbId}';
};

export type MethodsMethodDbIdGetResponses = {
    /**
     * OK
     */
    200: MethodSingleResponse;
};

export type MethodsMethodDbIdGetResponse = MethodsMethodDbIdGetResponses[keyof MethodsMethodDbIdGetResponses];

export type MethodsMethodDbIdPutData = {
    body: MethodBaseClass;
    headers?: {
        Authorization?: string;
    };
    path: {
        methodDbId: string;
    };
    query?: never;
    url: '/methods/{methodDbId}';
};

export type MethodsMethodDbIdPutResponses = {
    /**
     * OK
     */
    200: MethodSingleResponse;
};

export type MethodsMethodDbIdPutResponse = MethodsMethodDbIdPutResponses[keyof MethodsMethodDbIdPutResponses];

export type LocationsLocationDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        locationDbId: string;
    };
    query?: never;
    url: '/locations/{locationDbId}';
};

export type LocationsLocationDbIdGetResponses = {
    /**
     * OK
     */
    200: LocationSingleResponse;
};

export type LocationsLocationDbIdGetResponse = LocationsLocationDbIdGetResponses[keyof LocationsLocationDbIdGetResponses];

export type LocationsLocationDbIdPutData = {
    body: LocationNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        locationDbId: string;
    };
    query?: never;
    url: '/locations/{locationDbId}';
};

export type LocationsLocationDbIdPutResponses = {
    /**
     * OK
     */
    200: LocationSingleResponse;
};

export type LocationsLocationDbIdPutResponse = LocationsLocationDbIdPutResponses[keyof LocationsLocationDbIdPutResponses];

export type ListsListDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        listDbId: string;
    };
    query?: never;
    url: '/lists/{listDbId}';
};

export type ListsListDbIdGetResponses = {
    /**
     * OK
     */
    200: ListsSingleResponse;
};

export type ListsListDbIdGetResponse = ListsListDbIdGetResponses[keyof ListsListDbIdGetResponses];

export type ListsListDbIdPutData = {
    body: ListNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        listDbId: string;
    };
    query?: never;
    url: '/lists/{listDbId}';
};

export type ListsListDbIdPutResponses = {
    /**
     * OK
     */
    200: ListsSingleResponse;
};

export type ListsListDbIdPutResponse = ListsListDbIdPutResponses[keyof ListsListDbIdPutResponses];

export type ImagesImageDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        imageDbId: string;
    };
    query?: never;
    url: '/images/{imageDbId}';
};

export type ImagesImageDbIdGetResponses = {
    /**
     * OK
     */
    200: ImageSingleResponse;
};

export type ImagesImageDbIdGetResponse = ImagesImageDbIdGetResponses[keyof ImagesImageDbIdGetResponses];

export type ImagesImageDbIdPutData = {
    body: ImageNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        imageDbId: string;
    };
    query?: never;
    url: '/images/{imageDbId}';
};

export type ImagesImageDbIdPutResponses = {
    /**
     * OK
     */
    200: ImageSingleResponse;
};

export type ImagesImageDbIdPutResponse = ImagesImageDbIdPutResponses[keyof ImagesImageDbIdPutResponses];

export type ImagesImageDbIdImageContentPutData = {
    body: string;
    headers?: {
        Authorization?: string;
    };
    path: {
        imageDbId: string;
    };
    query?: never;
    url: '/images/{imageDbId}/imagecontent';
};

export type ImagesImageDbIdImageContentPutResponses = {
    /**
     * OK
     */
    200: ImageSingleResponse;
};

export type ImagesImageDbIdImageContentPutResponse = ImagesImageDbIdImageContentPutResponses[keyof ImagesImageDbIdImageContentPutResponses];

export type GermplasmGermplasmDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        germplasmDbId: string;
    };
    query?: never;
    url: '/germplasm/{germplasmDbId}';
};

export type GermplasmGermplasmDbIdGetResponses = {
    /**
     * OK
     */
    200: GermplasmSingleResponse;
};

export type GermplasmGermplasmDbIdGetResponse = GermplasmGermplasmDbIdGetResponses[keyof GermplasmGermplasmDbIdGetResponses];

export type GermplasmGermplasmDbIdPutData = {
    body: GermplasmNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        germplasmDbId: string;
    };
    query?: never;
    url: '/germplasm/{germplasmDbId}';
};

export type GermplasmGermplasmDbIdPutResponses = {
    /**
     * OK
     */
    200: GermplasmSingleResponse;
};

export type GermplasmGermplasmDbIdPutResponse = GermplasmGermplasmDbIdPutResponses[keyof GermplasmGermplasmDbIdPutResponses];

export type CrossingProjectsCrossingProjectDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        crossingProjectDbId: string;
    };
    query?: never;
    url: '/crossingprojects/{crossingProjectDbId}';
};

export type CrossingProjectsCrossingProjectDbIdGetResponses = {
    /**
     * OK
     */
    200: CrossingProjectsSingleResponse;
};

export type CrossingProjectsCrossingProjectDbIdGetResponse = CrossingProjectsCrossingProjectDbIdGetResponses[keyof CrossingProjectsCrossingProjectDbIdGetResponses];

export type CrossingProjectsCrossingProjectDbIdPutData = {
    body: CrossingProjectNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        crossingProjectDbId: string;
    };
    query?: never;
    url: '/crossingprojects/{crossingProjectDbId}';
};

export type CrossingProjectsCrossingProjectDbIdPutResponses = {
    /**
     * OK
     */
    200: CrossingProjectsSingleResponse;
};

export type CrossingProjectsCrossingProjectDbIdPutResponse = CrossingProjectsCrossingProjectDbIdPutResponses[keyof CrossingProjectsCrossingProjectDbIdPutResponses];

export type CrossesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        crossingProjectDbId?: string;
        crossingProjectName?: string;
        crossDbId?: string;
        crossName?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/crosses';
};

export type CrossesGetResponses = {
    /**
     * OK
     */
    200: CrossesListResponse;
};

export type CrossesGetResponse = CrossesGetResponses[keyof CrossesGetResponses];

export type CrossesPostData = {
    body: Array<CrossNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/crosses';
};

export type CrossesPostResponses = {
    /**
     * OK
     */
    200: CrossesListResponse;
};

export type CrossesPostResponse = CrossesPostResponses[keyof CrossesPostResponses];

export type CrossesPutData = {
    body: {
        [key: string]: CrossNewRequest;
    };
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/crosses';
};

export type CrossesPutResponses = {
    /**
     * OK
     */
    200: CrossesListResponse;
};

export type CrossesPutResponse = CrossesPutResponses[keyof CrossesPutResponses];

export type CallsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        callSetDbId?: string;
        variantDbId?: string;
        variantSetDbId?: string;
        expandHomozygotes?: boolean;
        unknownString?: string;
        sepPhased?: string;
        sepUnphased?: string;
        pageToken?: string;
        pageSize?: number;
    };
    url: '/calls';
};

export type CallsGetResponses = {
    /**
     * OK
     */
    200: CallsListResponse;
};

export type CallsGetResponse = CallsGetResponses[keyof CallsGetResponses];

export type CallsPutData = {
    body: Array<Call>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/calls';
};

export type CallsPutResponses = {
    /**
     * OK
     */
    200: CallsListResponse;
};

export type CallsPutResponse = CallsPutResponses[keyof CallsPutResponses];

export type AttributevaluesAttributeValueDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        attributeValueDbId: string;
    };
    query?: never;
    url: '/attributevalues/{attributeValueDbId}';
};

export type AttributevaluesAttributeValueDbIdGetResponses = {
    /**
     * OK
     */
    200: GermplasmAttributeValueSingleResponse;
};

export type AttributevaluesAttributeValueDbIdGetResponse = AttributevaluesAttributeValueDbIdGetResponses[keyof AttributevaluesAttributeValueDbIdGetResponses];

export type AttributevaluesAttributeValueDbIdPutData = {
    body: GermplasmAttributeValueNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        attributeValueDbId: string;
    };
    query?: never;
    url: '/attributevalues/{attributeValueDbId}';
};

export type AttributevaluesAttributeValueDbIdPutResponses = {
    /**
     * OK
     */
    200: GermplasmAttributeValueSingleResponse;
};

export type AttributevaluesAttributeValueDbIdPutResponse = AttributevaluesAttributeValueDbIdPutResponses[keyof AttributevaluesAttributeValueDbIdPutResponses];

export type AttributesAttributeDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        attributeDbId: string;
    };
    query?: never;
    url: '/attributes/{attributeDbId}';
};

export type AttributesAttributeDbIdGetResponses = {
    /**
     * OK
     */
    200: GermplasmAttributeSingleResponse;
};

export type AttributesAttributeDbIdGetResponse = AttributesAttributeDbIdGetResponses[keyof AttributesAttributeDbIdGetResponses];

export type AttributesAttributeDbIdPutData = {
    body: GermplasmAttributeNewRequest;
    headers?: {
        Authorization?: string;
    };
    path: {
        attributeDbId: string;
    };
    query?: never;
    url: '/attributes/{attributeDbId}';
};

export type AttributesAttributeDbIdPutResponses = {
    /**
     * OK
     */
    200: GermplasmAttributeSingleResponse;
};

export type AttributesAttributeDbIdPutResponse = AttributesAttributeDbIdPutResponses[keyof AttributesAttributeDbIdPutResponses];

export type VendorPlatesPostData = {
    body: VendorPlateSubmissionRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/vendor/plates';
};

export type VendorPlatesPostResponses = {
    /**
     * OK
     */
    200: VendorPlateSubmissionIdSingleResponse;
};

export type VendorPlatesPostResponse = VendorPlatesPostResponses[keyof VendorPlatesPostResponses];

export type VendorOrdersGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        orderId?: string;
        submissionId?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/vendor/orders';
};

export type VendorOrdersGetResponses = {
    /**
     * OK
     */
    200: VendorOrderListResponse;
};

export type VendorOrdersGetResponse = VendorOrdersGetResponses[keyof VendorOrdersGetResponses];

export type VendorOrdersPostData = {
    body: VendorOrderSubmissionRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/vendor/orders';
};

export type VendorOrdersPostResponses = {
    /**
     * OK
     */
    200: VendorOrderSubmissionSingleResponse;
};

export type VendorOrdersPostResponse = VendorOrdersPostResponses[keyof VendorOrdersPostResponses];

export type VariantsetsExtractPostData = {
    body: VariantSetsExtractRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/variantsets/extract';
};

export type VariantsetsExtractPostResponses = {
    /**
     * OK
     */
    200: VariantSetResponse;
};

export type VariantsetsExtractPostResponse = VariantsetsExtractPostResponses[keyof VariantsetsExtractPostResponses];

export type VariablesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        observationVariableDbId?: string;
        observationVariableName?: string;
        observationVariablePUI?: string;
        methodDbId?: string;
        methodName?: string;
        methodPUI?: string;
        scaleDbId?: string;
        scaleName?: string;
        scalePUI?: string;
        traitDbId?: string;
        traitName?: string;
        traitPUI?: string;
        traitClass?: string;
        ontologyDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        trialDbId?: string;
        studyDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/variables';
};

export type VariablesGetResponses = {
    /**
     * OK
     */
    200: ObservationVariableListResponse;
};

export type VariablesGetResponse = VariablesGetResponses[keyof VariablesGetResponses];

export type VariablesPostData = {
    body: Array<ObservationVariableNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/variables';
};

export type VariablesPostResponses = {
    /**
     * OK
     */
    200: ObservationVariableListResponse;
};

export type VariablesPostResponse = VariablesPostResponses[keyof VariablesPostResponses];

export type TrialsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        active?: boolean;
        commonCropName?: string;
        contactDbId?: string;
        programDbId?: string;
        locationDbId?: string;
        searchDateRangeStart?: string;
        searchDateRangeEnd?: string;
        studyDbId?: string;
        trialDbId?: string;
        trialName?: string;
        trialPUI?: string;
        sortBy?: string;
        sortOrder?: string;
        externalReferenceID?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/trials';
};

export type TrialsGetResponses = {
    /**
     * OK
     */
    200: TrialListResponse;
};

export type TrialsGetResponse = TrialsGetResponses[keyof TrialsGetResponses];

export type TrialsPostData = {
    body: Array<TrialNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/trials';
};

export type TrialsPostResponses = {
    /**
     * OK
     */
    200: TrialListResponse;
};

export type TrialsPostResponse = TrialsPostResponses[keyof TrialsPostResponses];

export type TraitsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        traitDbId?: string;
        observationVariableDbId?: string;
        ontologyDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/traits';
};

export type TraitsGetResponses = {
    /**
     * OK
     */
    200: TraitListResponse;
};

export type TraitsGetResponse = TraitsGetResponses[keyof TraitsGetResponses];

export type TraitsPostData = {
    body: Array<TraitBaseClass>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/traits';
};

export type TraitsPostResponses = {
    /**
     * OK
     */
    200: TraitListResponse;
};

export type TraitsPostResponse = TraitsPostResponses[keyof TraitsPostResponses];

export type StudiesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        commonCropName?: string;
        studyType?: string;
        programDbId?: string;
        locationDbId?: string;
        seasonDbId?: string;
        trialDbId?: string;
        studyDbId?: string;
        studyName?: string;
        studyCode?: string;
        studyPUI?: string;
        germplasmDbId?: string;
        observationVariableDbId?: string;
        active?: boolean;
        sortBy?: string;
        sortOrder?: string;
        externalReferenceID?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/studies';
};

export type StudiesGetResponses = {
    /**
     * OK
     */
    200: StudyListResponse;
};

export type StudiesGetResponse = StudiesGetResponses[keyof StudiesGetResponses];

export type StudiesPostData = {
    body: Array<StudyNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/studies';
};

export type StudiesPostResponses = {
    /**
     * OK
     */
    200: StudyListResponse;
};

export type StudiesPostResponse = StudiesPostResponses[keyof StudiesPostResponses];

export type SeedlotsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        seedLotDbId?: string;
        germplasmDbId?: string;
        germplasmName?: string;
        crossDbId?: string;
        crossName?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/seedlots';
};

export type SeedlotsGetResponses = {
    /**
     * OK
     */
    200: SeedLotListResponse;
};

export type SeedlotsGetResponse = SeedlotsGetResponses[keyof SeedlotsGetResponses];

export type SeedlotsPostData = {
    body: Array<SeedLotNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/seedlots';
};

export type SeedlotsPostResponses = {
    /**
     * OK
     */
    200: SeedLotListResponse;
};

export type SeedlotsPostResponse = SeedlotsPostResponses[keyof SeedlotsPostResponses];

export type SeedlotsTransactionsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        transactionDbId?: string;
        seedLotDbId?: string;
        germplasmDbId?: string;
        germplasmName?: string;
        crossDbId?: string;
        crossName?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/seedlots/transactions';
};

export type SeedlotsTransactionsGetResponses = {
    /**
     * OK
     */
    200: SeedLotTransactionListResponse;
};

export type SeedlotsTransactionsGetResponse = SeedlotsTransactionsGetResponses[keyof SeedlotsTransactionsGetResponses];

export type SeedlotsTransactionsPostData = {
    body: Array<SeedLotNewTransactionRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/seedlots/transactions';
};

export type SeedlotsTransactionsPostResponses = {
    /**
     * OK
     */
    200: SeedLotTransactionListResponse;
};

export type SeedlotsTransactionsPostResponse = SeedlotsTransactionsPostResponses[keyof SeedlotsTransactionsPostResponses];

export type SeasonsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        seasonDbId?: string;
        season?: string;
        seasonName?: string;
        year?: number;
        page?: number;
        pageSize?: number;
    };
    url: '/seasons';
};

export type SeasonsGetResponses = {
    /**
     * OK
     */
    200: SeasonListResponse;
};

export type SeasonsGetResponse = SeasonsGetResponses[keyof SeasonsGetResponses];

export type SeasonsPostData = {
    body: Array<Season>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/seasons';
};

export type SeasonsPostResponses = {
    /**
     * OK
     */
    200: SeasonListResponse;
};

export type SeasonsPostResponse = SeasonsPostResponses[keyof SeasonsPostResponses];

export type SearchVariantsetsPostData = {
    body: VariantSetsSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/variantsets';
};

export type SearchVariantsetsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchVariantsetsPostResponse = SearchVariantsetsPostResponses[keyof SearchVariantsetsPostResponses];

export type SearchVariantsPostData = {
    body: VariantsSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/variants';
};

export type SearchVariantsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchVariantsPostResponse = SearchVariantsPostResponses[keyof SearchVariantsPostResponses];

export type SearchVariablesPostData = {
    body: ObservationVariableSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/variables';
};

export type SearchVariablesPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchVariablesPostResponse = SearchVariablesPostResponses[keyof SearchVariablesPostResponses];

export type SearchTrialsPostData = {
    body: TrialSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/trials';
};

export type SearchTrialsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchTrialsPostResponse = SearchTrialsPostResponses[keyof SearchTrialsPostResponses];

export type SearchStudiesPostData = {
    body: StudySearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/studies';
};

export type SearchStudiesPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchStudiesPostResponse = SearchStudiesPostResponses[keyof SearchStudiesPostResponses];

export type SearchSamplesPostData = {
    body: SampleSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/samples';
};

export type SearchSamplesPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchSamplesPostResponse = SearchSamplesPostResponses[keyof SearchSamplesPostResponses];

export type SearchReferenceSetsPostData = {
    body: ReferenceSetsSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/referencesets';
};

export type SearchReferenceSetsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchReferenceSetsPostResponse = SearchReferenceSetsPostResponses[keyof SearchReferenceSetsPostResponses];

export type SearchReferencesPostData = {
    body: ReferencesSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/references';
};

export type SearchReferencesPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchReferencesPostResponse = SearchReferencesPostResponses[keyof SearchReferencesPostResponses];

export type SearchProgramsPostData = {
    body: ProgramSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/programs';
};

export type SearchProgramsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchProgramsPostResponse = SearchProgramsPostResponses[keyof SearchProgramsPostResponses];

export type SearchPlatesPostData = {
    body: PlateSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/plates';
};

export type SearchPlatesPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchPlatesPostResponse = SearchPlatesPostResponses[keyof SearchPlatesPostResponses];

export type SearchPeoplePostData = {
    body: PersonSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/people';
};

export type SearchPeoplePostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchPeoplePostResponse = SearchPeoplePostResponses[keyof SearchPeoplePostResponses];

export type SearchPedigreePostData = {
    body: PedigreeSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/pedigree';
};

export type SearchPedigreePostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchPedigreePostResponse = SearchPedigreePostResponses[keyof SearchPedigreePostResponses];

export type SearchObservationunitsPostData = {
    body: ObservationUnitSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/observationunits';
};

export type SearchObservationunitsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchObservationunitsPostResponse = SearchObservationunitsPostResponses[keyof SearchObservationunitsPostResponses];

export type SearchObservationsPostData = {
    body: ObservationSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/observations';
};

export type SearchObservationsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchObservationsPostResponse = SearchObservationsPostResponses[keyof SearchObservationsPostResponses];

export type SearchMarkerpositionsPostData = {
    body: MarkerPositionSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/markerpositions';
};

export type SearchMarkerpositionsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchMarkerpositionsPostResponse = SearchMarkerpositionsPostResponses[keyof SearchMarkerpositionsPostResponses];

export type SearchLocationsPostData = {
    body: LocationSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/locations';
};

export type SearchLocationsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchLocationsPostResponse = SearchLocationsPostResponses[keyof SearchLocationsPostResponses];

export type SearchListsPostData = {
    body: ListSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/lists';
};

export type SearchListsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchListsPostResponse = SearchListsPostResponses[keyof SearchListsPostResponses];

export type SearchImagesPostData = {
    body: ImageSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/images';
};

export type SearchImagesPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchImagesPostResponse = SearchImagesPostResponses[keyof SearchImagesPostResponses];

export type SearchGermplasmPostData = {
    body: GermplasmSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/germplasm';
};

export type SearchGermplasmPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchGermplasmPostResponse = SearchGermplasmPostResponses[keyof SearchGermplasmPostResponses];

export type SearchCallsetsPostData = {
    body: CallSetsSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/callsets';
};

export type SearchCallsetsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchCallsetsPostResponse = SearchCallsetsPostResponses[keyof SearchCallsetsPostResponses];

export type SearchCallsPostData = {
    body: CallsSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/calls';
};

export type SearchCallsPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchCallsPostResponse = SearchCallsPostResponses[keyof SearchCallsPostResponses];

export type SearchAttributevaluesPostData = {
    body: GermplasmAttributeValueSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/attributevalues';
};

export type SearchAttributevaluesPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchAttributevaluesPostResponse = SearchAttributevaluesPostResponses[keyof SearchAttributevaluesPostResponses];

export type SearchAttributesPostData = {
    body: GermplasmAttributeSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/attributes';
};

export type SearchAttributesPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchAttributesPostResponse = SearchAttributesPostResponses[keyof SearchAttributesPostResponses];

export type SearchAllelematrixPostData = {
    body: AlleleMatrixSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/search/allelematrix';
};

export type SearchAllelematrixPostResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchAllelematrixPostResponse = SearchAllelematrixPostResponses[keyof SearchAllelematrixPostResponses];

export type ScalesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        scaleDbId?: string;
        observationVariableDbId?: string;
        ontologyDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/scales';
};

export type ScalesGetResponses = {
    /**
     * OK
     */
    200: ScaleListResponse;
};

export type ScalesGetResponse = ScalesGetResponses[keyof ScalesGetResponses];

export type ScalesPostData = {
    body: Array<ScaleBaseClass>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/scales';
};

export type ScalesPostResponses = {
    /**
     * OK
     */
    200: ScaleListResponse;
};

export type ScalesPostResponse = ScalesPostResponses[keyof ScalesPostResponses];

export type ProgramsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        commonCropName?: string;
        programName?: string;
        programDbId?: string;
        abbreviation?: string;
        programType?: 'STANARD' | 'PROJECT';
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/programs';
};

export type ProgramsGetResponses = {
    /**
     * OK
     */
    200: ProgramListResponse;
};

export type ProgramsGetResponse = ProgramsGetResponses[keyof ProgramsGetResponses];

export type ProgramsPostData = {
    body: Array<ProgramNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/programs';
};

export type ProgramsPostResponses = {
    /**
     * OK
     */
    200: ProgramListResponse;
};

export type ProgramsPostResponse = ProgramsPostResponses[keyof ProgramsPostResponses];

export type PeopleGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        firstName?: string;
        lastName?: string;
        personDbId?: string;
        userID?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/people';
};

export type PeopleGetResponses = {
    /**
     * OK
     */
    200: PersonListResponse;
};

export type PeopleGetResponse = PeopleGetResponses[keyof PeopleGetResponses];

export type PeoplePostData = {
    body: Array<PersonNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/people';
};

export type PeoplePostResponses = {
    /**
     * OK
     */
    200: PersonListResponse;
};

export type PeoplePostResponse = PeoplePostResponses[keyof PeoplePostResponses];

export type OntologiesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        ontologyDbId?: string;
        ontologyName?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/ontologies';
};

export type OntologiesGetResponses = {
    /**
     * OK
     */
    200: OntologyListResponse;
};

export type OntologiesGetResponse = OntologiesGetResponses[keyof OntologiesGetResponses];

export type OntologiesPostData = {
    body: Array<OntologyNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/ontologies';
};

export type OntologiesPostResponses = {
    /**
     * OK
     */
    200: OntologyListResponse;
};

export type OntologiesPostResponse = OntologiesPostResponses[keyof OntologiesPostResponses];

export type MethodsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        methodDbId?: string;
        observationVariableDbId?: string;
        ontologyDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/methods';
};

export type MethodsGetResponses = {
    /**
     * OK
     */
    200: MethodListResponse;
};

export type MethodsGetResponse = MethodsGetResponses[keyof MethodsGetResponses];

export type MethodsPostData = {
    body: Array<MethodBaseClass>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/methods';
};

export type MethodsPostResponses = {
    /**
     * OK
     */
    200: MethodListResponse;
};

export type MethodsPostResponse = MethodsPostResponses[keyof MethodsPostResponses];

export type LocationsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        locationType?: string;
        locationDbId?: string;
        locationName?: string;
        parentLocationDbId?: string;
        parentLocationName?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/locations';
};

export type LocationsGetResponses = {
    /**
     * OK
     */
    200: LocationListResponse;
};

export type LocationsGetResponse = LocationsGetResponses[keyof LocationsGetResponses];

export type LocationsPostData = {
    body: Array<LocationNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/locations';
};

export type LocationsPostResponses = {
    /**
     * OK
     */
    200: LocationListResponse;
};

export type LocationsPostResponse = LocationsPostResponses[keyof LocationsPostResponses];

export type ListsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        listType?: string;
        listName?: string;
        listDbId?: string;
        listSource?: string;
        programDbId?: string;
        commonCropName?: string;
        externalReferenceID?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/lists';
};

export type ListsGetResponses = {
    /**
     * OK
     */
    200: ListsListResponse;
};

export type ListsGetResponse = ListsGetResponses[keyof ListsGetResponses];

export type ListsPostData = {
    body: Array<ListNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/lists';
};

export type ListsPostResponses = {
    /**
     * OK
     */
    200: ListsListResponse;
};

export type ListsPostResponse = ListsPostResponses[keyof ListsPostResponses];

export type ListsListDbIdItemsPostData = {
    body: Array<string>;
    headers?: {
        Authorization?: string;
    };
    path: {
        listDbId: string;
    };
    query?: never;
    url: '/lists/{listDbId}/items';
};

export type ListsListDbIdItemsPostResponses = {
    /**
     * OK
     */
    200: ListResponse;
};

export type ListsListDbIdItemsPostResponse = ListsListDbIdItemsPostResponses[keyof ListsListDbIdItemsPostResponses];

export type ListsListDbIdDataPostData = {
    body: Array<string>;
    headers?: {
        Authorization?: string;
    };
    path: {
        listDbId: string;
    };
    query?: never;
    url: '/lists/{listDbId}/data';
};

export type ListsListDbIdDataPostResponses = {
    /**
     * OK
     */
    200: ListResponse;
};

export type ListsListDbIdDataPostResponse = ListsListDbIdDataPostResponses[keyof ListsListDbIdDataPostResponses];

export type ImagesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        imageDbId?: string;
        imageName?: string;
        observationUnitDbId?: string;
        observationDbId?: string;
        descriptiveOntologyTerm?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceID?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/images';
};

export type ImagesGetResponses = {
    /**
     * OK
     */
    200: ImageListResponse;
};

export type ImagesGetResponse = ImagesGetResponses[keyof ImagesGetResponses];

export type ImagesPostData = {
    body: Array<ImageNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/images';
};

export type ImagesPostResponses = {
    /**
     * OK
     */
    200: ImageListResponse;
};

export type ImagesPostResponse = ImagesPostResponses[keyof ImagesPostResponses];

export type GermplasmGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        germplasmPUI?: string;
        germplasmDbId?: string;
        germplasmName?: string;
        accessionNumber?: string;
        collection?: string;
        binomialName?: string;
        genus?: string;
        species?: string;
        trialDbId?: string;
        studyDbId?: string;
        synonym?: string;
        parentDbId?: string;
        progenyDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/germplasm';
};

export type GermplasmGetResponses = {
    /**
     * OK
     */
    200: GermplasmListResponse;
};

export type GermplasmGetResponse = GermplasmGetResponses[keyof GermplasmGetResponses];

export type GermplasmPostData = {
    body: Array<GermplasmNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/germplasm';
};

export type GermplasmPostResponses = {
    /**
     * OK
     */
    200: GermplasmListResponse;
};

export type GermplasmPostResponse = GermplasmPostResponses[keyof GermplasmPostResponses];

export type DeleteObservationsPostData = {
    body: ObservationSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/delete/observations';
};

export type DeleteObservationsPostResponses = {
    /**
     * OK
     */
    200: ObservationDeleteResponse;
};

export type DeleteObservationsPostResponse = DeleteObservationsPostResponses[keyof DeleteObservationsPostResponses];

export type DeleteImagesPostData = {
    body: ImageSearchRequest;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/delete/images';
};

export type DeleteImagesPostResponses = {
    /**
     * OK
     */
    200: ImageDeleteResponse;
};

export type DeleteImagesPostResponse = DeleteImagesPostResponses[keyof DeleteImagesPostResponses];

export type CrossingProjectsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        crossingProjectDbId?: string;
        crossingProjectName?: string;
        includePotentialParents?: boolean;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/crossingprojects';
};

export type CrossingProjectsGetResponses = {
    /**
     * OK
     */
    200: CrossingProjectsListResponse;
};

export type CrossingProjectsGetResponse = CrossingProjectsGetResponses[keyof CrossingProjectsGetResponses];

export type CrossingProjectsPostData = {
    body: Array<CrossingProjectNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/crossingprojects';
};

export type CrossingProjectsPostResponses = {
    /**
     * OK
     */
    200: CrossingProjectsListResponse;
};

export type CrossingProjectsPostResponse = CrossingProjectsPostResponses[keyof CrossingProjectsPostResponses];

export type AttributevaluesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        attributeValueDbId?: string;
        attributeDbId?: string;
        attributeName?: string;
        germplasmDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceID?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/attributevalues';
};

export type AttributevaluesGetResponses = {
    /**
     * OK
     */
    200: GermplasmAttributeValueListResponse;
};

export type AttributevaluesGetResponse = AttributevaluesGetResponses[keyof AttributevaluesGetResponses];

export type AttributevaluesPostData = {
    body: Array<GermplasmAttributeValueNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/attributevalues';
};

export type AttributevaluesPostResponses = {
    /**
     * OK
     */
    200: GermplasmAttributeValueListResponse;
};

export type AttributevaluesPostResponse = AttributevaluesPostResponses[keyof AttributevaluesPostResponses];

export type AttributesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        attributeCategory?: string;
        attributeDbId?: string;
        attributeName?: string;
        attributePUI?: string;
        germplasmDbId?: string;
        methodDbId?: string;
        methodName?: string;
        methodPUI?: string;
        scaleDbId?: string;
        scaleName?: string;
        scalePUI?: string;
        traitDbId?: string;
        traitName?: string;
        traitPUI?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/attributes';
};

export type AttributesGetResponses = {
    /**
     * OK
     */
    200: GermplasmAttributeListResponse;
};

export type AttributesGetResponse = AttributesGetResponses[keyof AttributesGetResponses];

export type AttributesPostData = {
    body: Array<GermplasmAttributeNewRequest>;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/attributes';
};

export type AttributesPostResponses = {
    /**
     * OK
     */
    200: GermplasmAttributeListResponse;
};

export type AttributesPostResponse = AttributesPostResponses[keyof AttributesPostResponses];

export type VendorSpecificationsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: never;
    url: '/vendor/specifications';
};

export type VendorSpecificationsGetResponses = {
    /**
     * OK
     */
    200: VendorSpecificationSingleResponse;
};

export type VendorSpecificationsGetResponse = VendorSpecificationsGetResponses[keyof VendorSpecificationsGetResponses];

export type VendorPlatesSubmissionIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        submissionId: string;
    };
    query?: never;
    url: '/vendor/plates/{submissionId}';
};

export type VendorPlatesSubmissionIdGetResponses = {
    /**
     * OK
     */
    200: VendorPlateSubmissionSingleResponse;
};

export type VendorPlatesSubmissionIdGetResponse = VendorPlatesSubmissionIdGetResponses[keyof VendorPlatesSubmissionIdGetResponses];

export type VendorOrdersOrderIdStatusGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        orderId: string;
    };
    query?: never;
    url: '/vendor/orders/{orderId}/status';
};

export type VendorOrdersOrderIdStatusGetResponses = {
    /**
     * OK
     */
    200: VendorOrderStatusResponse;
};

export type VendorOrdersOrderIdStatusGetResponse = VendorOrdersOrderIdStatusGetResponses[keyof VendorOrdersOrderIdStatusGetResponses];

export type VendorOrdersOrderIdResultsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        orderId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/vendor/orders/{orderId}/results';
};

export type VendorOrdersOrderIdResultsGetResponses = {
    /**
     * OK
     */
    200: VendorResultFileListResponse;
};

export type VendorOrdersOrderIdResultsGetResponse = VendorOrdersOrderIdResultsGetResponses[keyof VendorOrdersOrderIdResultsGetResponses];

export type VendorOrdersOrderIdPlatesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        orderId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/vendor/orders/{orderId}/plates';
};

export type VendorOrdersOrderIdPlatesGetResponses = {
    /**
     * OK
     */
    200: VendorPlateListResponse;
};

export type VendorOrdersOrderIdPlatesGetResponse = VendorOrdersOrderIdPlatesGetResponses[keyof VendorOrdersOrderIdPlatesGetResponses];

export type VariantsetsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        variantSetDbId?: string;
        variantDbId?: string;
        callSetDbId?: string;
        studyDbId?: string;
        studyName?: string;
        referenceSetDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/variantsets';
};

export type VariantsetsGetResponses = {
    /**
     * OK
     */
    200: VariantSetsListResponse;
};

export type VariantsetsGetResponse = VariantsetsGetResponses[keyof VariantsetsGetResponses];

export type VariantsetsVariantSetDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        variantSetDbId: string;
    };
    query?: never;
    url: '/variantsets/{variantSetDbId}';
};

export type VariantsetsVariantSetDbIdGetResponses = {
    /**
     * OK
     */
    200: VariantSetResponse;
};

export type VariantsetsVariantSetDbIdGetResponse = VariantsetsVariantSetDbIdGetResponses[keyof VariantsetsVariantSetDbIdGetResponses];

export type VariantsetsVariantSetDbIdVariantsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        variantSetDbId: string;
    };
    query?: {
        variantDbId?: string;
        pageToken?: string;
        pageSize?: number;
    };
    url: '/variantsets/{variantSetDbId}/variants';
};

export type VariantsetsVariantSetDbIdVariantsGetResponses = {
    /**
     * OK
     */
    200: VariantsListResponse;
};

export type VariantsetsVariantSetDbIdVariantsGetResponse = VariantsetsVariantSetDbIdVariantsGetResponses[keyof VariantsetsVariantSetDbIdVariantsGetResponses];

export type VariantsetsVariantSetDbIdCallsetsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        variantSetDbId: string;
    };
    query?: {
        callSetDbId?: string;
        callSetName?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/variantsets/{variantSetDbId}/callsets';
};

export type VariantsetsVariantSetDbIdCallsetsGetResponses = {
    /**
     * OK
     */
    200: CallSetsListResponse;
};

export type VariantsetsVariantSetDbIdCallsetsGetResponse = VariantsetsVariantSetDbIdCallsetsGetResponses[keyof VariantsetsVariantSetDbIdCallsetsGetResponses];

export type VariantsetsVariantSetDbIdCallsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        variantSetDbId: string;
    };
    query?: {
        expandHomozygotes?: boolean;
        unknownString?: string;
        sepPhased?: string;
        sepUnphased?: string;
        pageToken?: string;
        pageSize?: number;
    };
    url: '/variantsets/{variantSetDbId}/calls';
};

export type VariantsetsVariantSetDbIdCallsGetResponses = {
    /**
     * OK
     */
    200: CallsListResponse;
};

export type VariantsetsVariantSetDbIdCallsGetResponse = VariantsetsVariantSetDbIdCallsGetResponses[keyof VariantsetsVariantSetDbIdCallsGetResponses];

export type VariantsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        variantDbId?: string;
        variantSetDbId?: string;
        referenceDbId?: string;
        referenceSetDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        pageToken?: string;
        pageSize?: number;
    };
    url: '/variants';
};

export type VariantsGetResponses = {
    /**
     * OK
     */
    200: VariantsListResponse;
};

export type VariantsGetResponse = VariantsGetResponses[keyof VariantsGetResponses];

export type VariantsVariantDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        variantDbId: string;
    };
    query?: never;
    url: '/variants/{variantDbId}';
};

export type VariantsVariantDbIdGetResponses = {
    /**
     * OK
     */
    200: VariantSingleResponse;
};

export type VariantsVariantDbIdGetResponse = VariantsVariantDbIdGetResponses[keyof VariantsVariantDbIdGetResponses];

export type VariantsVariantDbIdCallsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        variantDbId: string;
    };
    query?: {
        expandHomozygotes?: boolean;
        unknownString?: string;
        sepPhased?: string;
        sepUnphased?: string;
        pageToken?: string;
        pageSize?: number;
    };
    url: '/variants/{variantDbId}/calls';
};

export type VariantsVariantDbIdCallsGetResponses = {
    /**
     * OK
     */
    200: CallsListResponse;
};

export type VariantsVariantDbIdCallsGetResponse = VariantsVariantDbIdCallsGetResponses[keyof VariantsVariantDbIdCallsGetResponses];

export type StudytypesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/studytypes';
};

export type StudytypesGetResponses = {
    /**
     * OK
     */
    200: StudyTypesResponse;
};

export type StudytypesGetResponse = StudytypesGetResponses[keyof StudytypesGetResponses];

export type ServerinfoGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        dataType?: 'application/json' | 'text/csv' | 'text/tsv' | 'application/flapjack' | 'application/excel' | 'application/zip';
        contentType?: 'application/json' | 'text/csv' | 'text/tsv' | 'application/flapjack' | 'application/excel' | 'application/zip';
    };
    url: '/serverinfo';
};

export type ServerinfoGetResponses = {
    /**
     * OK
     */
    200: ServerInfoResponse;
};

export type ServerinfoGetResponse = ServerinfoGetResponses[keyof ServerinfoGetResponses];

export type SeedlotsSeedLotDbIdTransactionsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        seedLotDbId: string;
    };
    query?: {
        transactionDbId?: string;
        transactionDirection?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/seedlots/{seedLotDbId}/transactions';
};

export type SeedlotsSeedLotDbIdTransactionsGetResponses = {
    /**
     * OK
     */
    200: SeedLotTransactionListResponse;
};

export type SeedlotsSeedLotDbIdTransactionsGetResponse = SeedlotsSeedLotDbIdTransactionsGetResponses[keyof SeedlotsSeedLotDbIdTransactionsGetResponses];

export type SearchVariantsetsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/variantsets/{searchResultsDbId}';
};

export type SearchVariantsetsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchVariantsetsSearchResultsDbIdGetResponse = SearchVariantsetsSearchResultsDbIdGetResponses[keyof SearchVariantsetsSearchResultsDbIdGetResponses];

export type SearchVariantsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        pageToken?: string;
        pageSize?: number;
    };
    url: '/search/variants/{searchResultsDbId}';
};

export type SearchVariantsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchVariantsSearchResultsDbIdGetResponse = SearchVariantsSearchResultsDbIdGetResponses[keyof SearchVariantsSearchResultsDbIdGetResponses];

export type SearchVariablesSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/variables/{searchResultsDbId}';
};

export type SearchVariablesSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchVariablesSearchResultsDbIdGetResponse = SearchVariablesSearchResultsDbIdGetResponses[keyof SearchVariablesSearchResultsDbIdGetResponses];

export type SearchTrialsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/trials/{searchResultsDbId}';
};

export type SearchTrialsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchTrialsSearchResultsDbIdGetResponse = SearchTrialsSearchResultsDbIdGetResponses[keyof SearchTrialsSearchResultsDbIdGetResponses];

export type SearchStudiesSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/studies/{searchResultsDbId}';
};

export type SearchStudiesSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchStudiesSearchResultsDbIdGetResponse = SearchStudiesSearchResultsDbIdGetResponses[keyof SearchStudiesSearchResultsDbIdGetResponses];

export type SearchSamplesSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/samples/{searchResultsDbId}';
};

export type SearchSamplesSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchSamplesSearchResultsDbIdGetResponse = SearchSamplesSearchResultsDbIdGetResponses[keyof SearchSamplesSearchResultsDbIdGetResponses];

export type SearchReferenceSetsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/referencesets/{searchResultsDbId}';
};

export type SearchReferenceSetsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchReferenceSetsSearchResultsDbIdGetResponse = SearchReferenceSetsSearchResultsDbIdGetResponses[keyof SearchReferenceSetsSearchResultsDbIdGetResponses];

export type SearchReferencesSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/references/{searchResultsDbId}';
};

export type SearchReferencesSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchReferencesSearchResultsDbIdGetResponse = SearchReferencesSearchResultsDbIdGetResponses[keyof SearchReferencesSearchResultsDbIdGetResponses];

export type SearchProgramsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/programs/{searchResultsDbId}';
};

export type SearchProgramsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchProgramsSearchResultsDbIdGetResponse = SearchProgramsSearchResultsDbIdGetResponses[keyof SearchProgramsSearchResultsDbIdGetResponses];

export type SearchPlatesSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/plates/{searchResultsDbId}';
};

export type SearchPlatesSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchPlatesSearchResultsDbIdGetResponse = SearchPlatesSearchResultsDbIdGetResponses[keyof SearchPlatesSearchResultsDbIdGetResponses];

export type SearchPeopleSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/people/{searchResultsDbId}';
};

export type SearchPeopleSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchPeopleSearchResultsDbIdGetResponse = SearchPeopleSearchResultsDbIdGetResponses[keyof SearchPeopleSearchResultsDbIdGetResponses];

export type SearchPedigreeSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/pedigree/{searchResultsDbId}';
};

export type SearchPedigreeSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchPedigreeSearchResultsDbIdGetResponse = SearchPedigreeSearchResultsDbIdGetResponses[keyof SearchPedigreeSearchResultsDbIdGetResponses];

export type SearchObservationunitsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/observationunits/{searchResultsDbId}';
};

export type SearchObservationunitsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchObservationunitsSearchResultsDbIdGetResponse = SearchObservationunitsSearchResultsDbIdGetResponses[keyof SearchObservationunitsSearchResultsDbIdGetResponses];

export type SearchObservationsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/observations/{searchResultsDbId}';
};

export type SearchObservationsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchObservationsSearchResultsDbIdGetResponse = SearchObservationsSearchResultsDbIdGetResponses[keyof SearchObservationsSearchResultsDbIdGetResponses];

export type SearchMarkerpositionsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/markerpositions/{searchResultsDbId}';
};

export type SearchMarkerpositionsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchMarkerpositionsSearchResultsDbIdGetResponse = SearchMarkerpositionsSearchResultsDbIdGetResponses[keyof SearchMarkerpositionsSearchResultsDbIdGetResponses];

export type SearchLocationsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/locations/{searchResultsDbId}';
};

export type SearchLocationsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchLocationsSearchResultsDbIdGetResponse = SearchLocationsSearchResultsDbIdGetResponses[keyof SearchLocationsSearchResultsDbIdGetResponses];

export type SearchListsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/lists/{searchResultsDbId}';
};

export type SearchListsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchListsSearchResultsDbIdGetResponse = SearchListsSearchResultsDbIdGetResponses[keyof SearchListsSearchResultsDbIdGetResponses];

export type SearchImagesSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/images/{searchResultsDbId}';
};

export type SearchImagesSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchImagesSearchResultsDbIdGetResponse = SearchImagesSearchResultsDbIdGetResponses[keyof SearchImagesSearchResultsDbIdGetResponses];

export type SearchGermplasmSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/germplasm/{searchResultsDbId}';
};

export type SearchGermplasmSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchGermplasmSearchResultsDbIdGetResponse = SearchGermplasmSearchResultsDbIdGetResponses[keyof SearchGermplasmSearchResultsDbIdGetResponses];

export type SearchCallsetsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/callsets/{searchResultsDbId}';
};

export type SearchCallsetsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchCallsetsSearchResultsDbIdGetResponse = SearchCallsetsSearchResultsDbIdGetResponses[keyof SearchCallsetsSearchResultsDbIdGetResponses];

export type SearchCallsSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        pageToken?: string;
        pageSize?: number;
    };
    url: '/search/calls/{searchResultsDbId}';
};

export type SearchCallsSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchCallsSearchResultsDbIdGetResponse = SearchCallsSearchResultsDbIdGetResponses[keyof SearchCallsSearchResultsDbIdGetResponses];

export type SearchAttributevaluesSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/attributevalues/{searchResultsDbId}';
};

export type SearchAttributevaluesSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchAttributevaluesSearchResultsDbIdGetResponse = SearchAttributevaluesSearchResultsDbIdGetResponses[keyof SearchAttributevaluesSearchResultsDbIdGetResponses];

export type SearchAttributesSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/search/attributes/{searchResultsDbId}';
};

export type SearchAttributesSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchAttributesSearchResultsDbIdGetResponse = SearchAttributesSearchResultsDbIdGetResponses[keyof SearchAttributesSearchResultsDbIdGetResponses];

export type SearchAllelematrixSearchResultsDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        searchResultsDbId: string;
    };
    query?: never;
    url: '/search/allelematrix/{searchResultsDbId}';
};

export type SearchAllelematrixSearchResultsDbIdGetResponses = {
    /**
     * OK
     */
    200: BrApiResponse;
};

export type SearchAllelematrixSearchResultsDbIdGetResponse = SearchAllelematrixSearchResultsDbIdGetResponses[keyof SearchAllelematrixSearchResultsDbIdGetResponses];

export type ReferenceSetsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        referenceSetDbId?: string;
        accession?: string;
        assemblyPUI?: string;
        md5checksum?: string;
        trialDbId?: string;
        studyDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/referencesets';
};

export type ReferenceSetsGetResponses = {
    /**
     * OK
     */
    200: ReferenceSetsListResponse;
};

export type ReferenceSetsGetResponse = ReferenceSetsGetResponses[keyof ReferenceSetsGetResponses];

export type ReferenceSetsReferenceSetDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        referenceSetDbId: string;
    };
    query?: never;
    url: '/referencesets/{referenceSetDbId}';
};

export type ReferenceSetsReferenceSetDbIdGetResponses = {
    /**
     * OK
     */
    200: ReferenceSetsSingleResponse;
};

export type ReferenceSetsReferenceSetDbIdGetResponse = ReferenceSetsReferenceSetDbIdGetResponses[keyof ReferenceSetsReferenceSetDbIdGetResponses];

export type ReferencesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        referenceDbId?: string;
        referenceSetDbId?: string;
        accession?: string;
        md5checksum?: string;
        isDerived?: boolean;
        minLength?: number;
        maxLength?: number;
        trialDbId?: string;
        studyDbId?: string;
        commonCropName?: string;
        programDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/references';
};

export type ReferencesGetResponses = {
    /**
     * OK
     */
    200: ReferencesListResponse;
};

export type ReferencesGetResponse = ReferencesGetResponses[keyof ReferencesGetResponses];

export type ReferencesReferenceDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        referenceDbId: string;
    };
    query?: never;
    url: '/references/{referenceDbId}';
};

export type ReferencesReferenceDbIdGetResponses = {
    /**
     * OK
     */
    200: ReferenceSingleResponse;
};

export type ReferencesReferenceDbIdGetResponse = ReferencesReferenceDbIdGetResponses[keyof ReferencesReferenceDbIdGetResponses];

export type ReferencesReferenceDbIdBasesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        referenceDbId: string;
    };
    query?: {
        start?: number;
        end?: number;
        pageToken?: string;
    };
    url: '/references/{referenceDbId}/bases';
};

export type ReferencesReferenceDbIdBasesGetResponses = {
    /**
     * OK
     */
    200: ReferenceBasesResponse;
};

export type ReferencesReferenceDbIdBasesGetResponse = ReferencesReferenceDbIdBasesGetResponses[keyof ReferencesReferenceDbIdBasesGetResponses];

export type PlatesPlateDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        plateDbId: string;
    };
    query?: never;
    url: '/plates/{plateDbId}';
};

export type PlatesPlateDbIdGetResponses = {
    /**
     * OK
     */
    200: PlateSingleResponse;
};

export type PlatesPlateDbIdGetResponse = PlatesPlateDbIdGetResponses[keyof PlatesPlateDbIdGetResponses];

export type ObservationunitsTableGetData = {
    body?: never;
    headers?: {
        Accept?: string;
        Authorization?: string;
    };
    path?: never;
    query?: {
        observationUnitDbId?: string;
        germplasmDbId?: string;
        observationVariableDbId?: string;
        studyDbId?: string;
        locationDbId?: string;
        trialDbId?: string;
        programDbId?: string;
        seasonDbId?: string;
        observationLevel?: string;
        observationUnitLevelName?: string;
        observationUnitLevelOrder?: string;
        observationUnitLevelCode?: string;
        observationUnitLevelRelationshipName?: string;
        observationUnitLevelRelationshipOrder?: string;
        observationUnitLevelRelationshipCode?: string;
        observationUnitLevelRelationshipDbId?: string;
    };
    url: '/observationunits/table';
};

export type ObservationunitsTableGetResponses = {
    /**
     * OK
     */
    200: string;
};

export type ObservationunitsTableGetResponse = ObservationunitsTableGetResponses[keyof ObservationunitsTableGetResponses];

export type ObservationsTableGetData = {
    body?: never;
    headers?: {
        Accept?: string;
        Authorization?: string;
    };
    path?: never;
    query?: {
        observationUnitDbId?: string;
        germplasmDbId?: string;
        observationVariableDbId?: string;
        studyDbId?: string;
        locationDbId?: string;
        trialDbId?: string;
        programDbId?: string;
        seasonDbId?: string;
        observationLevel?: string;
        searchResultsDbId?: string;
        observationTimeStampRangeStart?: string;
        observationTimeStampRangeEnd?: string;
        observationUnitLevelName?: string;
        observationUnitLevelOrder?: string;
        observationUnitLevelCode?: string;
        observationUnitLevelRelationshipName?: string;
        observationUnitLevelRelationshipOrder?: string;
        observationUnitLevelRelationshipCode?: string;
        observationUnitLevelRelationshipDbId?: string;
    };
    url: '/observations/table';
};

export type ObservationsTableGetResponses = {
    /**
     * OK
     */
    200: string;
};

export type ObservationsTableGetResponse = ObservationsTableGetResponses[keyof ObservationsTableGetResponses];

export type ObservationlevelsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        studyDbId?: string;
        trialDbId?: string;
        programDbId?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/observationlevels';
};

export type ObservationlevelsGetResponses = {
    /**
     * OK
     */
    200: ObservationLevelListResponse;
};

export type ObservationlevelsGetResponse = ObservationlevelsGetResponses[keyof ObservationlevelsGetResponses];

export type MarkerpositionsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        mapDbId?: string;
        linkageGroupName?: string;
        variantDbId?: string;
        minPosition?: number;
        maxPosition?: number;
        page?: number;
        pageSize?: number;
    };
    url: '/markerpositions';
};

export type MarkerpositionsGetResponses = {
    /**
     * OK
     */
    200: MarkerPositionsListResponse;
};

export type MarkerpositionsGetResponse = MarkerpositionsGetResponses[keyof MarkerpositionsGetResponses];

export type MapsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        commonCropName?: string;
        mapPUI?: string;
        scientificName?: string;
        type?: string;
        programDbId?: string;
        trialDbId?: string;
        studyDbId?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/maps';
};

export type MapsGetResponses = {
    /**
     * OK
     */
    200: GenomeMapListResponse;
};

export type MapsGetResponse = MapsGetResponses[keyof MapsGetResponses];

export type MapsMapDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        mapDbId: string;
    };
    query?: never;
    url: '/maps/{mapDbId}';
};

export type MapsMapDbIdGetResponses = {
    /**
     * OK
     */
    200: GenomeMapSingleResponse;
};

export type MapsMapDbIdGetResponse = MapsMapDbIdGetResponses[keyof MapsMapDbIdGetResponses];

export type MapsMapDbIdLinkagegroupsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        mapDbId: string;
    };
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/maps/{mapDbId}/linkagegroups';
};

export type MapsMapDbIdLinkagegroupsGetResponses = {
    /**
     * OK
     */
    200: LinkageGroupListResponse;
};

export type MapsMapDbIdLinkagegroupsGetResponse = MapsMapDbIdLinkagegroupsGetResponses[keyof MapsMapDbIdLinkagegroupsGetResponses];

export type ImagesImageDbIdContentGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        imageDbId: string;
        imageName: string;
    };
    query?: never;
    url: '/images/{imageDbId}/{imageName}';
};

export type ImagesImageDbIdContentGetResponses = {
    /**
     * OK
     */
    200: string;
};

export type ImagesImageDbIdContentGetResponse = ImagesImageDbIdContentGetResponses[keyof ImagesImageDbIdContentGetResponses];

export type GermplasmGermplasmDbIdProgenyGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        germplasmDbId: string;
    };
    query?: never;
    url: '/germplasm/{germplasmDbId}/progeny';
};

export type GermplasmGermplasmDbIdProgenyGetResponses = {
    /**
     * OK
     */
    200: GermplasmProgenyResponse;
};

export type GermplasmGermplasmDbIdProgenyGetResponse = GermplasmGermplasmDbIdProgenyGetResponses[keyof GermplasmGermplasmDbIdProgenyGetResponses];

export type GermplasmGermplasmDbIdPedigreeGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        germplasmDbId: string;
    };
    query?: {
        notation?: string;
        includeSiblings?: boolean;
    };
    url: '/germplasm/{germplasmDbId}/pedigree';
};

export type GermplasmGermplasmDbIdPedigreeGetResponses = {
    /**
     * OK
     */
    200: GermplasmPedigreeResponse;
};

export type GermplasmGermplasmDbIdPedigreeGetResponse = GermplasmGermplasmDbIdPedigreeGetResponses[keyof GermplasmGermplasmDbIdPedigreeGetResponses];

export type GermplasmGermplasmDbIdMcpdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        germplasmDbId: string;
    };
    query?: never;
    url: '/germplasm/{germplasmDbId}/mcpd';
};

export type GermplasmGermplasmDbIdMcpdGetResponses = {
    /**
     * OK
     */
    200: GermplasmMcpdResponse;
};

export type GermplasmGermplasmDbIdMcpdGetResponse = GermplasmGermplasmDbIdMcpdGetResponses[keyof GermplasmGermplasmDbIdMcpdGetResponses];

export type EventsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        eventDbId?: string;
        studyDbId?: string;
        observationUnitDbId?: string;
        eventType?: string;
        dateRangeStart?: string;
        dateRangeEnd?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/events';
};

export type EventsGetResponses = {
    /**
     * OK
     */
    200: EventsResponse;
};

export type EventsGetResponse = EventsGetResponses[keyof EventsGetResponses];

export type CommoncropnamesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/commoncropnames';
};

export type CommoncropnamesGetResponses = {
    /**
     * OK
     */
    200: CommonCropNamesResponse;
};

export type CommoncropnamesGetResponse = CommoncropnamesGetResponses[keyof CommoncropnamesGetResponses];

export type CallsetsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        callSetDbId?: string;
        callSetName?: string;
        variantSetDbId?: string;
        sampleDbId?: string;
        germplasmDbId?: string;
        externalReferenceId?: string;
        externalReferenceSource?: string;
        page?: number;
        pageSize?: number;
    };
    url: '/callsets';
};

export type CallsetsGetResponses = {
    /**
     * OK
     */
    200: CallSetsListResponse;
};

export type CallsetsGetResponse = CallsetsGetResponses[keyof CallsetsGetResponses];

export type CallsetsCallSetDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        callSetDbId: string;
    };
    query?: never;
    url: '/callsets/{callSetDbId}';
};

export type CallsetsCallSetDbIdGetResponses = {
    /**
     * OK
     */
    200: CallSetResponse;
};

export type CallsetsCallSetDbIdGetResponse = CallsetsCallSetDbIdGetResponses[keyof CallsetsCallSetDbIdGetResponses];

export type CallsetsCallSetDbIdCallsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        callSetDbId: string;
    };
    query?: {
        expandHomozygotes?: boolean;
        unknownString?: string;
        sepPhased?: string;
        sepUnphased?: string;
        pageToken?: string;
        pageSize?: number;
    };
    url: '/callsets/{callSetDbId}/calls';
};

export type CallsetsCallSetDbIdCallsGetResponses = {
    /**
     * OK
     */
    200: CallsListResponse;
};

export type CallsetsCallSetDbIdCallsGetResponse = CallsetsCallSetDbIdCallsGetResponses[keyof CallsetsCallSetDbIdCallsGetResponses];

export type BreedingmethodsGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/breedingmethods';
};

export type BreedingmethodsGetResponses = {
    /**
     * OK
     */
    200: BreedingMethodListResponse;
};

export type BreedingmethodsGetResponse = BreedingmethodsGetResponses[keyof BreedingmethodsGetResponses];

export type BreedingmethodsBreedingMethodDbIdGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path: {
        breedingMethodDbId: string;
    };
    query?: never;
    url: '/breedingmethods/{breedingMethodDbId}';
};

export type BreedingmethodsBreedingMethodDbIdGetResponses = {
    /**
     * OK
     */
    200: BreedingMethodSingleResponse;
};

export type BreedingmethodsBreedingMethodDbIdGetResponse = BreedingmethodsBreedingMethodDbIdGetResponses[keyof BreedingmethodsBreedingMethodDbIdGetResponses];

export type AttributesCategoriesGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        page?: number;
        pageSize?: number;
    };
    url: '/attributes/categories';
};

export type AttributesCategoriesGetResponses = {
    /**
     * OK
     */
    200: GermplasmAttributeCategoryListResponse;
};

export type AttributesCategoriesGetResponse = AttributesCategoriesGetResponses[keyof AttributesCategoriesGetResponses];

export type AllelematrixGetData = {
    body?: never;
    headers?: {
        Authorization?: string;
    };
    path?: never;
    query?: {
        dimensionVariantPage?: number;
        dimensionVariantPageSize?: number;
        dimensionCallSetPage?: number;
        dimensionCallSetPageSize?: number;
        preview?: boolean;
        dataMatrixNames?: string;
        dataMatrixAbbreviations?: string;
        positionRange?: string;
        germplasmDbId?: string;
        germplasmName?: string;
        germplasmPUI?: string;
        alleleMatrixSetDbId?: string;
        variantDbId?: string;
        variantSetDbId?: string;
        expandHomozygotes?: boolean;
        unknownString?: string;
        sepPhased?: string;
        sepUnphased?: string;
    };
    url: '/allelematrix';
};

export type AllelematrixGetResponses = {
    /**
     * OK
     */
    200: AlleleMatrixResponse;
};

export type AllelematrixGetResponse = AllelematrixGetResponses[keyof AllelematrixGetResponses];
