// This file was auto-generated by Fern from our API Definition.

/**
 * Contains SLA status at the moment of pausing for conversation part type <code>conversation_sla_paused</code>.
 */
export interface ConversationSlaPaused {
    /** Name of the SLA being paused */
    sla_name?: string;
    /** Overall SLA status at pause time */
    current_sla_status?: ConversationSlaPaused.CurrentSlaStatus;
    /** Status of all SLA targets at pause time */
    sla_states?: Record<string, ConversationSlaPaused.SlaStates.Value>;
}

export namespace ConversationSlaPaused {
    /** Overall SLA status at pause time */
    export const CurrentSlaStatus = {
        Active: "active",
        Hit: "hit",
        Missed: "missed",
        Canceled: "canceled",
    } as const;
    export type CurrentSlaStatus = (typeof CurrentSlaStatus)[keyof typeof CurrentSlaStatus];

    export namespace SlaStates {
        export interface Value {
            /** Status of this specific target (always paused) */
            status?: "paused";
            /** Time remaining when paused */
            seconds_remaining?: number;
        }
    }
}
