import * as z from "zod";
import { OpenEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { Attachment, Attachment$Outbound } from "./attachment.js";
export type AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate = {
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    /**
     * Candidate profile url
     */
    profileUrl?: string | null | undefined;
};
export type AtsUpdateCandidatesAssessmentsResultsRequestDto4 = {};
/**
 * The source value of the test result.
 */
export type AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue = AtsUpdateCandidatesAssessmentsResultsRequestDto4 | string | number | boolean | Array<any>;
/**
 * The result of the test.
 */
export declare enum AtsUpdateCandidatesAssessmentsResultsRequestDtoValue {
    Cancelled = "cancelled",
    Completed = "completed",
    Expired = "expired",
    Failed = "failed",
    Passed = "passed",
    UnmappedValue = "unmapped_value"
}
/**
 * The result of the test.
 */
export type AtsUpdateCandidatesAssessmentsResultsRequestDtoValueOpen = OpenEnum<typeof AtsUpdateCandidatesAssessmentsResultsRequestDtoValue>;
export type AtsUpdateCandidatesAssessmentsResultsRequestDtoResult = {
    /**
     * The source value of the test result.
     */
    sourceValue?: AtsUpdateCandidatesAssessmentsResultsRequestDto4 | string | number | boolean | Array<any> | null | undefined;
    /**
     * The result of the test.
     */
    value?: AtsUpdateCandidatesAssessmentsResultsRequestDtoValueOpen | null | undefined;
};
export type AtsUpdateCandidatesAssessmentsResultsRequestDtoScore = {
    /**
     * The label of the score
     */
    label?: string | null | undefined;
    /**
     * The maximum value of the score
     */
    max?: string | null | undefined;
    /**
     * The minimum value of the score
     */
    min?: string | null | undefined;
    /**
     * The value is the actual score
     */
    value?: string | null | undefined;
};
export type AtsUpdateCandidatesAssessmentsResultsRequestDto = {
    attachments?: Array<Attachment> | null | undefined;
    candidate?: AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    /**
     * Value to pass through to the provider
     */
    passthrough?: {
        [k: string]: any;
    } | null | undefined;
    result?: AtsUpdateCandidatesAssessmentsResultsRequestDtoResult | null | undefined;
    /**
     * The test`s result url
     */
    resultUrl?: string | null | undefined;
    score?: AtsUpdateCandidatesAssessmentsResultsRequestDtoScore | null | undefined;
    /**
     * The start date of the candidate test
     */
    startDate?: Date | null | undefined;
    /**
     * The submission date of the candidate test
     */
    submissionDate?: Date | null | undefined;
    /**
     * The summary about the result of the test
     */
    summary?: string | null | undefined;
};
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate, z.ZodTypeDef, unknown>;
/** @internal */
export type AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$Outbound = {
    id?: string | null | undefined;
    profile_url?: string | null | undefined;
};
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$ {
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate, z.ZodTypeDef, unknown>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$Outbound` instead. */
    type Outbound = AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$Outbound;
}
export declare function atsUpdateCandidatesAssessmentsResultsRequestDtoCandidateToJSON(atsUpdateCandidatesAssessmentsResultsRequestDtoCandidate: AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate): string;
export declare function atsUpdateCandidatesAssessmentsResultsRequestDtoCandidateFromJSON(jsonString: string): SafeParseResult<AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate, SDKValidationError>;
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDto4$inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDto4, z.ZodTypeDef, unknown>;
/** @internal */
export type AtsUpdateCandidatesAssessmentsResultsRequestDto4$Outbound = {};
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDto4$outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDto4$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDto4>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AtsUpdateCandidatesAssessmentsResultsRequestDto4$ {
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDto4$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDto4, z.ZodTypeDef, unknown>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDto4$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDto4$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDto4>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDto4$Outbound` instead. */
    type Outbound = AtsUpdateCandidatesAssessmentsResultsRequestDto4$Outbound;
}
export declare function atsUpdateCandidatesAssessmentsResultsRequestDto4ToJSON(atsUpdateCandidatesAssessmentsResultsRequestDto4: AtsUpdateCandidatesAssessmentsResultsRequestDto4): string;
export declare function atsUpdateCandidatesAssessmentsResultsRequestDto4FromJSON(jsonString: string): SafeParseResult<AtsUpdateCandidatesAssessmentsResultsRequestDto4, SDKValidationError>;
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue$inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue, z.ZodTypeDef, unknown>;
/** @internal */
export type AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue$Outbound = AtsUpdateCandidatesAssessmentsResultsRequestDto4$Outbound | string | number | boolean | Array<any>;
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue$outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue$ {
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue, z.ZodTypeDef, unknown>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue$Outbound` instead. */
    type Outbound = AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue$Outbound;
}
export declare function atsUpdateCandidatesAssessmentsResultsRequestDtoSourceValueToJSON(atsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue: AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue): string;
export declare function atsUpdateCandidatesAssessmentsResultsRequestDtoSourceValueFromJSON(jsonString: string): SafeParseResult<AtsUpdateCandidatesAssessmentsResultsRequestDtoSourceValue, SDKValidationError>;
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDtoValue$inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoValueOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDtoValue$outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoValueOpen, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDtoValueOpen>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AtsUpdateCandidatesAssessmentsResultsRequestDtoValue$ {
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoValue$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoValueOpen, z.ZodTypeDef, unknown>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoValue$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoValueOpen, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDtoValueOpen>;
}
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoResult, z.ZodTypeDef, unknown>;
/** @internal */
export type AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$Outbound = {
    source_value?: AtsUpdateCandidatesAssessmentsResultsRequestDto4$Outbound | string | number | boolean | Array<any> | null | undefined;
    value?: string | null | undefined;
};
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDtoResult>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$ {
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoResult, z.ZodTypeDef, unknown>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDtoResult>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$Outbound` instead. */
    type Outbound = AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$Outbound;
}
export declare function atsUpdateCandidatesAssessmentsResultsRequestDtoResultToJSON(atsUpdateCandidatesAssessmentsResultsRequestDtoResult: AtsUpdateCandidatesAssessmentsResultsRequestDtoResult): string;
export declare function atsUpdateCandidatesAssessmentsResultsRequestDtoResultFromJSON(jsonString: string): SafeParseResult<AtsUpdateCandidatesAssessmentsResultsRequestDtoResult, SDKValidationError>;
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoScore, z.ZodTypeDef, unknown>;
/** @internal */
export type AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$Outbound = {
    label?: string | null | undefined;
    max?: string | null | undefined;
    min?: string | null | undefined;
    value?: string | null | undefined;
};
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDtoScore>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$ {
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoScore, z.ZodTypeDef, unknown>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDtoScore>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$Outbound` instead. */
    type Outbound = AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$Outbound;
}
export declare function atsUpdateCandidatesAssessmentsResultsRequestDtoScoreToJSON(atsUpdateCandidatesAssessmentsResultsRequestDtoScore: AtsUpdateCandidatesAssessmentsResultsRequestDtoScore): string;
export declare function atsUpdateCandidatesAssessmentsResultsRequestDtoScoreFromJSON(jsonString: string): SafeParseResult<AtsUpdateCandidatesAssessmentsResultsRequestDtoScore, SDKValidationError>;
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDto$inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDto, z.ZodTypeDef, unknown>;
/** @internal */
export type AtsUpdateCandidatesAssessmentsResultsRequestDto$Outbound = {
    attachments?: Array<Attachment$Outbound> | null | undefined;
    candidate?: AtsUpdateCandidatesAssessmentsResultsRequestDtoCandidate$Outbound | null | undefined;
    id?: string | null | undefined;
    passthrough?: {
        [k: string]: any;
    } | null | undefined;
    result?: AtsUpdateCandidatesAssessmentsResultsRequestDtoResult$Outbound | null | undefined;
    result_url?: string | null | undefined;
    score?: AtsUpdateCandidatesAssessmentsResultsRequestDtoScore$Outbound | null | undefined;
    start_date?: string | null | undefined;
    submission_date?: string | null | undefined;
    summary?: string | null | undefined;
};
/** @internal */
export declare const AtsUpdateCandidatesAssessmentsResultsRequestDto$outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDto$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDto>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AtsUpdateCandidatesAssessmentsResultsRequestDto$ {
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDto$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDto, z.ZodTypeDef, unknown>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDto$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AtsUpdateCandidatesAssessmentsResultsRequestDto$Outbound, z.ZodTypeDef, AtsUpdateCandidatesAssessmentsResultsRequestDto>;
    /** @deprecated use `AtsUpdateCandidatesAssessmentsResultsRequestDto$Outbound` instead. */
    type Outbound = AtsUpdateCandidatesAssessmentsResultsRequestDto$Outbound;
}
export declare function atsUpdateCandidatesAssessmentsResultsRequestDtoToJSON(atsUpdateCandidatesAssessmentsResultsRequestDto: AtsUpdateCandidatesAssessmentsResultsRequestDto): string;
export declare function atsUpdateCandidatesAssessmentsResultsRequestDtoFromJSON(jsonString: string): SafeParseResult<AtsUpdateCandidatesAssessmentsResultsRequestDto, SDKValidationError>;
//# sourceMappingURL=atsupdatecandidatesassessmentsresultsrequestdto.d.ts.map