import * as z from "zod";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export declare const PostDemographicsStatus: {
    readonly Active: "active";
    readonly Tobedeleted: "tobedeleted";
};
export type PostDemographicsStatus = ClosedEnum<typeof PostDemographicsStatus>;
export declare const PostDemographicsSex: {
    readonly Male: "male";
    readonly Female: "female";
};
export type PostDemographicsSex = ClosedEnum<typeof PostDemographicsSex>;
export declare const PostDemographicsAmericanIndianOrAlaskaNative: {
    readonly True: "true";
    readonly False: "false";
};
export type PostDemographicsAmericanIndianOrAlaskaNative = ClosedEnum<typeof PostDemographicsAmericanIndianOrAlaskaNative>;
export declare const PostDemographicsAsian: {
    readonly True: "true";
    readonly False: "false";
};
export type PostDemographicsAsian = ClosedEnum<typeof PostDemographicsAsian>;
export declare const PostDemographicsBlackOrAfricanAmerican: {
    readonly True: "true";
    readonly False: "false";
};
export type PostDemographicsBlackOrAfricanAmerican = ClosedEnum<typeof PostDemographicsBlackOrAfricanAmerican>;
export declare const PostDemographicsNativeHawaiianOrOtherPacificIslander: {
    readonly True: "true";
    readonly False: "false";
};
export type PostDemographicsNativeHawaiianOrOtherPacificIslander = ClosedEnum<typeof PostDemographicsNativeHawaiianOrOtherPacificIslander>;
export declare const PostDemographicsWhite: {
    readonly True: "true";
    readonly False: "false";
};
export type PostDemographicsWhite = ClosedEnum<typeof PostDemographicsWhite>;
export declare const PostDemographicsDemographicRaceTwoOrMoreRaces: {
    readonly True: "true";
    readonly False: "false";
};
export type PostDemographicsDemographicRaceTwoOrMoreRaces = ClosedEnum<typeof PostDemographicsDemographicRaceTwoOrMoreRaces>;
export declare const PostDemographicsHispanicOrLatinoEthnicity: {
    readonly True: "true";
    readonly False: "false";
};
export type PostDemographicsHispanicOrLatinoEthnicity = ClosedEnum<typeof PostDemographicsHispanicOrLatinoEthnicity>;
export type PostDemographicsDemographics = {
    sourcedId: string;
    status?: PostDemographicsStatus | undefined;
    metadata?: {
        [k: string]: any;
    } | undefined;
    birthDate?: string | null | undefined;
    sex?: PostDemographicsSex | null | undefined;
    americanIndianOrAlaskaNative?: PostDemographicsAmericanIndianOrAlaskaNative | null | undefined;
    asian?: PostDemographicsAsian | null | undefined;
    blackOrAfricanAmerican?: PostDemographicsBlackOrAfricanAmerican | null | undefined;
    nativeHawaiianOrOtherPacificIslander?: PostDemographicsNativeHawaiianOrOtherPacificIslander | null | undefined;
    white?: PostDemographicsWhite | null | undefined;
    demographicRaceTwoOrMoreRaces?: PostDemographicsDemographicRaceTwoOrMoreRaces | null | undefined;
    hispanicOrLatinoEthnicity?: PostDemographicsHispanicOrLatinoEthnicity | null | undefined;
    countryOfBirthCode?: string | null | undefined;
    stateOfBirthAbbreviation?: string | null | undefined;
    cityOfBirth?: string | null | undefined;
    publicSchoolResidenceStatus?: string | null | undefined;
};
export type PostDemographicsRequest = {
    demographics: PostDemographicsDemographics;
};
export type PostDemographicsSourcedIdPairs = {
    suppliedSourcedId: string;
    allocatedSourcedId: string;
};
/**
 * Demographics record created successfully
 */
export type PostDemographicsResponse = {
    sourcedIdPairs: PostDemographicsSourcedIdPairs;
};
/** @internal */
export declare const PostDemographicsStatus$inboundSchema: z.ZodNativeEnum<typeof PostDemographicsStatus>;
/** @internal */
export declare const PostDemographicsStatus$outboundSchema: z.ZodNativeEnum<typeof PostDemographicsStatus>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsStatus$ {
    /** @deprecated use `PostDemographicsStatus$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Active: "active";
        readonly Tobedeleted: "tobedeleted";
    }>;
    /** @deprecated use `PostDemographicsStatus$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Active: "active";
        readonly Tobedeleted: "tobedeleted";
    }>;
}
/** @internal */
export declare const PostDemographicsSex$inboundSchema: z.ZodNativeEnum<typeof PostDemographicsSex>;
/** @internal */
export declare const PostDemographicsSex$outboundSchema: z.ZodNativeEnum<typeof PostDemographicsSex>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsSex$ {
    /** @deprecated use `PostDemographicsSex$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Male: "male";
        readonly Female: "female";
    }>;
    /** @deprecated use `PostDemographicsSex$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Male: "male";
        readonly Female: "female";
    }>;
}
/** @internal */
export declare const PostDemographicsAmericanIndianOrAlaskaNative$inboundSchema: z.ZodNativeEnum<typeof PostDemographicsAmericanIndianOrAlaskaNative>;
/** @internal */
export declare const PostDemographicsAmericanIndianOrAlaskaNative$outboundSchema: z.ZodNativeEnum<typeof PostDemographicsAmericanIndianOrAlaskaNative>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsAmericanIndianOrAlaskaNative$ {
    /** @deprecated use `PostDemographicsAmericanIndianOrAlaskaNative$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
    /** @deprecated use `PostDemographicsAmericanIndianOrAlaskaNative$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
}
/** @internal */
export declare const PostDemographicsAsian$inboundSchema: z.ZodNativeEnum<typeof PostDemographicsAsian>;
/** @internal */
export declare const PostDemographicsAsian$outboundSchema: z.ZodNativeEnum<typeof PostDemographicsAsian>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsAsian$ {
    /** @deprecated use `PostDemographicsAsian$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
    /** @deprecated use `PostDemographicsAsian$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
}
/** @internal */
export declare const PostDemographicsBlackOrAfricanAmerican$inboundSchema: z.ZodNativeEnum<typeof PostDemographicsBlackOrAfricanAmerican>;
/** @internal */
export declare const PostDemographicsBlackOrAfricanAmerican$outboundSchema: z.ZodNativeEnum<typeof PostDemographicsBlackOrAfricanAmerican>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsBlackOrAfricanAmerican$ {
    /** @deprecated use `PostDemographicsBlackOrAfricanAmerican$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
    /** @deprecated use `PostDemographicsBlackOrAfricanAmerican$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
}
/** @internal */
export declare const PostDemographicsNativeHawaiianOrOtherPacificIslander$inboundSchema: z.ZodNativeEnum<typeof PostDemographicsNativeHawaiianOrOtherPacificIslander>;
/** @internal */
export declare const PostDemographicsNativeHawaiianOrOtherPacificIslander$outboundSchema: z.ZodNativeEnum<typeof PostDemographicsNativeHawaiianOrOtherPacificIslander>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsNativeHawaiianOrOtherPacificIslander$ {
    /** @deprecated use `PostDemographicsNativeHawaiianOrOtherPacificIslander$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
    /** @deprecated use `PostDemographicsNativeHawaiianOrOtherPacificIslander$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
}
/** @internal */
export declare const PostDemographicsWhite$inboundSchema: z.ZodNativeEnum<typeof PostDemographicsWhite>;
/** @internal */
export declare const PostDemographicsWhite$outboundSchema: z.ZodNativeEnum<typeof PostDemographicsWhite>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsWhite$ {
    /** @deprecated use `PostDemographicsWhite$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
    /** @deprecated use `PostDemographicsWhite$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
}
/** @internal */
export declare const PostDemographicsDemographicRaceTwoOrMoreRaces$inboundSchema: z.ZodNativeEnum<typeof PostDemographicsDemographicRaceTwoOrMoreRaces>;
/** @internal */
export declare const PostDemographicsDemographicRaceTwoOrMoreRaces$outboundSchema: z.ZodNativeEnum<typeof PostDemographicsDemographicRaceTwoOrMoreRaces>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsDemographicRaceTwoOrMoreRaces$ {
    /** @deprecated use `PostDemographicsDemographicRaceTwoOrMoreRaces$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
    /** @deprecated use `PostDemographicsDemographicRaceTwoOrMoreRaces$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
}
/** @internal */
export declare const PostDemographicsHispanicOrLatinoEthnicity$inboundSchema: z.ZodNativeEnum<typeof PostDemographicsHispanicOrLatinoEthnicity>;
/** @internal */
export declare const PostDemographicsHispanicOrLatinoEthnicity$outboundSchema: z.ZodNativeEnum<typeof PostDemographicsHispanicOrLatinoEthnicity>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsHispanicOrLatinoEthnicity$ {
    /** @deprecated use `PostDemographicsHispanicOrLatinoEthnicity$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
    /** @deprecated use `PostDemographicsHispanicOrLatinoEthnicity$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly True: "true";
        readonly False: "false";
    }>;
}
/** @internal */
export declare const PostDemographicsDemographics$inboundSchema: z.ZodType<PostDemographicsDemographics, z.ZodTypeDef, unknown>;
/** @internal */
export type PostDemographicsDemographics$Outbound = {
    sourcedId: string;
    status: string;
    metadata?: {
        [k: string]: any;
    } | undefined;
    birthDate?: string | null | undefined;
    sex?: string | null | undefined;
    americanIndianOrAlaskaNative?: string | null | undefined;
    asian?: string | null | undefined;
    blackOrAfricanAmerican?: string | null | undefined;
    nativeHawaiianOrOtherPacificIslander?: string | null | undefined;
    white?: string | null | undefined;
    demographicRaceTwoOrMoreRaces?: string | null | undefined;
    hispanicOrLatinoEthnicity?: string | null | undefined;
    countryOfBirthCode?: string | null | undefined;
    stateOfBirthAbbreviation?: string | null | undefined;
    cityOfBirth?: string | null | undefined;
    publicSchoolResidenceStatus?: string | null | undefined;
};
/** @internal */
export declare const PostDemographicsDemographics$outboundSchema: z.ZodType<PostDemographicsDemographics$Outbound, z.ZodTypeDef, PostDemographicsDemographics>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsDemographics$ {
    /** @deprecated use `PostDemographicsDemographics$inboundSchema` instead. */
    const inboundSchema: z.ZodType<PostDemographicsDemographics, z.ZodTypeDef, unknown>;
    /** @deprecated use `PostDemographicsDemographics$outboundSchema` instead. */
    const outboundSchema: z.ZodType<PostDemographicsDemographics$Outbound, z.ZodTypeDef, PostDemographicsDemographics>;
    /** @deprecated use `PostDemographicsDemographics$Outbound` instead. */
    type Outbound = PostDemographicsDemographics$Outbound;
}
export declare function postDemographicsDemographicsToJSON(postDemographicsDemographics: PostDemographicsDemographics): string;
export declare function postDemographicsDemographicsFromJSON(jsonString: string): SafeParseResult<PostDemographicsDemographics, SDKValidationError>;
/** @internal */
export declare const PostDemographicsRequest$inboundSchema: z.ZodType<PostDemographicsRequest, z.ZodTypeDef, unknown>;
/** @internal */
export type PostDemographicsRequest$Outbound = {
    demographics: PostDemographicsDemographics$Outbound;
};
/** @internal */
export declare const PostDemographicsRequest$outboundSchema: z.ZodType<PostDemographicsRequest$Outbound, z.ZodTypeDef, PostDemographicsRequest>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsRequest$ {
    /** @deprecated use `PostDemographicsRequest$inboundSchema` instead. */
    const inboundSchema: z.ZodType<PostDemographicsRequest, z.ZodTypeDef, unknown>;
    /** @deprecated use `PostDemographicsRequest$outboundSchema` instead. */
    const outboundSchema: z.ZodType<PostDemographicsRequest$Outbound, z.ZodTypeDef, PostDemographicsRequest>;
    /** @deprecated use `PostDemographicsRequest$Outbound` instead. */
    type Outbound = PostDemographicsRequest$Outbound;
}
export declare function postDemographicsRequestToJSON(postDemographicsRequest: PostDemographicsRequest): string;
export declare function postDemographicsRequestFromJSON(jsonString: string): SafeParseResult<PostDemographicsRequest, SDKValidationError>;
/** @internal */
export declare const PostDemographicsSourcedIdPairs$inboundSchema: z.ZodType<PostDemographicsSourcedIdPairs, z.ZodTypeDef, unknown>;
/** @internal */
export type PostDemographicsSourcedIdPairs$Outbound = {
    suppliedSourcedId: string;
    allocatedSourcedId: string;
};
/** @internal */
export declare const PostDemographicsSourcedIdPairs$outboundSchema: z.ZodType<PostDemographicsSourcedIdPairs$Outbound, z.ZodTypeDef, PostDemographicsSourcedIdPairs>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsSourcedIdPairs$ {
    /** @deprecated use `PostDemographicsSourcedIdPairs$inboundSchema` instead. */
    const inboundSchema: z.ZodType<PostDemographicsSourcedIdPairs, z.ZodTypeDef, unknown>;
    /** @deprecated use `PostDemographicsSourcedIdPairs$outboundSchema` instead. */
    const outboundSchema: z.ZodType<PostDemographicsSourcedIdPairs$Outbound, z.ZodTypeDef, PostDemographicsSourcedIdPairs>;
    /** @deprecated use `PostDemographicsSourcedIdPairs$Outbound` instead. */
    type Outbound = PostDemographicsSourcedIdPairs$Outbound;
}
export declare function postDemographicsSourcedIdPairsToJSON(postDemographicsSourcedIdPairs: PostDemographicsSourcedIdPairs): string;
export declare function postDemographicsSourcedIdPairsFromJSON(jsonString: string): SafeParseResult<PostDemographicsSourcedIdPairs, SDKValidationError>;
/** @internal */
export declare const PostDemographicsResponse$inboundSchema: z.ZodType<PostDemographicsResponse, z.ZodTypeDef, unknown>;
/** @internal */
export type PostDemographicsResponse$Outbound = {
    sourcedIdPairs: PostDemographicsSourcedIdPairs$Outbound;
};
/** @internal */
export declare const PostDemographicsResponse$outboundSchema: z.ZodType<PostDemographicsResponse$Outbound, z.ZodTypeDef, PostDemographicsResponse>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace PostDemographicsResponse$ {
    /** @deprecated use `PostDemographicsResponse$inboundSchema` instead. */
    const inboundSchema: z.ZodType<PostDemographicsResponse, z.ZodTypeDef, unknown>;
    /** @deprecated use `PostDemographicsResponse$outboundSchema` instead. */
    const outboundSchema: z.ZodType<PostDemographicsResponse$Outbound, z.ZodTypeDef, PostDemographicsResponse>;
    /** @deprecated use `PostDemographicsResponse$Outbound` instead. */
    type Outbound = PostDemographicsResponse$Outbound;
}
export declare function postDemographicsResponseToJSON(postDemographicsResponse: PostDemographicsResponse): string;
export declare function postDemographicsResponseFromJSON(jsonString: string): SafeParseResult<PostDemographicsResponse, SDKValidationError>;
//# sourceMappingURL=postdemographics.d.ts.map