import * as z from "zod/v3";
import { OpenEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { Interviewer } from "./interviewer.js";
import { InterviewPart } from "./interviewpart.js";
export type ScheduledInterviewInterviewStage = {
    /**
     * Interview Stage created date
     */
    createdAt?: Date | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    name?: string | null | undefined;
    order?: number | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
    /**
     * Custom Unified Fields configured in your StackOne project
     */
    unifiedCustomFields?: {
        [k: string]: any;
    } | null | undefined;
    /**
     * Interview Stage updated date
     */
    updatedAt?: Date | null | undefined;
};
export type ScheduledInterview4 = {};
/**
 * The source value of the interview status.
 */
export type ScheduledInterviewSourceValue = string | number | boolean | ScheduledInterview4 | Array<any>;
/**
 * The status of the interview.
 */
export declare enum ScheduledInterviewValue {
    Unscheduled = "unscheduled",
    Scheduled = "scheduled",
    Completed = "completed",
    Cancelled = "cancelled",
    PendingFeedback = "pending_feedback",
    UnmappedValue = "unmapped_value"
}
/**
 * The status of the interview.
 */
export type ScheduledInterviewValueOpen = OpenEnum<typeof ScheduledInterviewValue>;
export type ScheduledInterviewInterviewStatus = {
    /**
     * The source value of the interview status.
     */
    sourceValue?: string | number | boolean | ScheduledInterview4 | Array<any> | null | undefined;
    /**
     * The status of the interview.
     */
    value?: ScheduledInterviewValueOpen | null | undefined;
};
export type ScheduledInterview = {
    applicationId?: string | null | undefined;
    /**
     * Interview created date
     */
    createdAt?: Date | null | undefined;
    /**
     * Interview end date
     */
    endAt?: Date | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    interviewParts?: Array<InterviewPart> | null | undefined;
    interviewStage?: ScheduledInterviewInterviewStage | null | undefined;
    interviewStageId?: string | null | undefined;
    interviewStatus?: ScheduledInterviewInterviewStatus | null | undefined;
    interviewerIds?: Array<string> | null | undefined;
    interviewers?: Array<Interviewer> | null | undefined;
    meetingUrl?: string | null | undefined;
    /**
     * Provider's unique identifier of the application
     */
    remoteApplicationId?: string | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
    /**
     * Provider's unique identifier of the interview stage
     */
    remoteInterviewStageId?: string | null | undefined;
    /**
     * Provider's unique identifiers of the interviewers
     */
    remoteInterviewerIds?: Array<string> | null | undefined;
    /**
     * Interview start date
     */
    startAt?: Date | null | undefined;
    /**
     * Interview updated date
     */
    updatedAt?: Date | null | undefined;
};
/** @internal */
export declare const ScheduledInterviewInterviewStage$inboundSchema: z.ZodType<ScheduledInterviewInterviewStage, z.ZodTypeDef, unknown>;
export declare function scheduledInterviewInterviewStageFromJSON(jsonString: string): SafeParseResult<ScheduledInterviewInterviewStage, SDKValidationError>;
/** @internal */
export declare const ScheduledInterview4$inboundSchema: z.ZodType<ScheduledInterview4, z.ZodTypeDef, unknown>;
export declare function scheduledInterview4FromJSON(jsonString: string): SafeParseResult<ScheduledInterview4, SDKValidationError>;
/** @internal */
export declare const ScheduledInterviewSourceValue$inboundSchema: z.ZodType<ScheduledInterviewSourceValue, z.ZodTypeDef, unknown>;
export declare function scheduledInterviewSourceValueFromJSON(jsonString: string): SafeParseResult<ScheduledInterviewSourceValue, SDKValidationError>;
/** @internal */
export declare const ScheduledInterviewValue$inboundSchema: z.ZodType<ScheduledInterviewValueOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const ScheduledInterviewInterviewStatus$inboundSchema: z.ZodType<ScheduledInterviewInterviewStatus, z.ZodTypeDef, unknown>;
export declare function scheduledInterviewInterviewStatusFromJSON(jsonString: string): SafeParseResult<ScheduledInterviewInterviewStatus, SDKValidationError>;
/** @internal */
export declare const ScheduledInterview$inboundSchema: z.ZodType<ScheduledInterview, z.ZodTypeDef, unknown>;
export declare function scheduledInterviewFromJSON(jsonString: string): SafeParseResult<ScheduledInterview, SDKValidationError>;
//# sourceMappingURL=scheduledinterview.d.ts.map