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 { TicketingComponent } from "./ticketingcomponent.js";
import { TicketingContent } from "./ticketingcontent.js";
import { TicketingProject } from "./ticketingproject.js";
/**
 * Organization associated with the ticket
 */
export type Organization = {
    /**
     * The domain of the organization
     */
    domain?: string | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    /**
     * The name of the organization
     */
    name?: string | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
};
export type TicketingReadTicket4 = {};
/**
 * The source value of the ticket priority.
 */
export type TicketingReadTicketSourceValue = string | number | boolean | TicketingReadTicket4 | Array<any>;
/**
 * The priority of the ticket.
 */
export declare enum TicketingReadTicketValue {
    Lowest = "lowest",
    Low = "low",
    Medium = "medium",
    High = "high",
    Highest = "highest",
    UnmappedValue = "unmapped_value"
}
/**
 * The priority of the ticket.
 */
export type TicketingReadTicketValueOpen = OpenEnum<typeof TicketingReadTicketValue>;
/**
 * Priority of the ticket
 */
export type Priority = {
    /**
     * The id of the ticket priority.
     */
    id?: string | null | undefined;
    /**
     * The source value of the ticket priority.
     */
    sourceValue?: string | number | boolean | TicketingReadTicket4 | Array<any> | null | undefined;
    /**
     * The priority of the ticket.
     */
    value?: TicketingReadTicketValueOpen | null | undefined;
};
export type TicketingReadTicketSchemas4 = {};
/**
 * The source value of this status type
 */
export type TicketingReadTicketSchemasSourceValue = string | number | boolean | TicketingReadTicketSchemas4 | Array<any>;
/**
 * The type of this status
 */
export declare enum TicketingReadTicketSchemasValue {
    ToDo = "to-do",
    InProgress = "in-progress",
    Closed = "closed",
    UnmappedValue = "unmapped_value"
}
/**
 * The type of this status
 */
export type TicketingReadTicketSchemasValueOpen = OpenEnum<typeof TicketingReadTicketSchemasValue>;
/**
 * The type of this status
 */
export type TicketingReadTicketSchemasType = {
    /**
     * The source value of this status type
     */
    sourceValue?: string | number | boolean | TicketingReadTicketSchemas4 | Array<any> | null | undefined;
    /**
     * The type of this status
     */
    value?: TicketingReadTicketSchemasValueOpen | null | undefined;
};
/**
 * Current status of the ticket
 */
export type TicketingReadTicketStatus = {
    /**
     * The id of the ticket status.
     */
    id?: string | null | undefined;
    /**
     * The name of the ticket status.
     */
    name?: string | null | undefined;
    /**
     * The type of this status
     */
    type?: TicketingReadTicketSchemasType | null | undefined;
};
/**
 * The type of the ticket
 */
export type TicketingReadTicketType = {
    /**
     * The id of the ticket type.
     */
    id?: string | null | undefined;
    /**
     * The name of the ticket type.
     */
    name?: string | null | undefined;
    /**
     * The project the ticket type belongs to.
     */
    projectId?: string | null | undefined;
};
export type TicketingReadTicket = {
    /**
     * Agents assigned to the ticket
     */
    assignees?: Array<string> | null | undefined;
    /**
     * The date the ticket was closed
     */
    closedAt?: Date | null | undefined;
    /**
     * Components associated with the ticket
     */
    components?: Array<TicketingComponent> | null | undefined;
    /**
     * Array of content associated with the ticket
     */
    content?: Array<TicketingContent> | null | undefined;
    /**
     * The timestamp when the record was created
     */
    createdAt?: Date | null | undefined;
    /**
     * The creator of the ticket
     */
    creatorId?: string | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    /**
     * Organization associated with the ticket
     */
    organization?: Organization | null | undefined;
    /**
     * ID of the parent ticket if this is a sub-ticket
     */
    parentId?: string | null | undefined;
    /**
     * Priority of the ticket
     */
    priority?: Priority | null | undefined;
    /**
     * Projects the ticket belongs to
     */
    projects?: Array<TicketingProject> | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
    /**
     * Users who reported the ticket
     */
    reporters?: Array<string> | null | undefined;
    /**
     * Current status of the ticket
     */
    status?: TicketingReadTicketStatus | null | undefined;
    /**
     * The tags of the ticket
     */
    tags?: Array<string> | null | undefined;
    /**
     * The unique ticket number or reference ID
     */
    ticketNumber?: string | null | undefined;
    /**
     * URL to view the ticket in the source system
     */
    ticketUrl?: string | null | undefined;
    /**
     * The title or subject of the ticket
     */
    title?: string | null | undefined;
    /**
     * The type of the ticket
     */
    type?: TicketingReadTicketType | null | undefined;
    /**
     * Custom Unified Fields configured in your StackOne project
     */
    unifiedCustomFields?: {
        [k: string]: any;
    } | null | undefined;
    /**
     * The timestamp when the record was last updated
     */
    updatedAt?: Date | null | undefined;
};
/** @internal */
export declare const Organization$inboundSchema: z.ZodType<Organization, z.ZodTypeDef, unknown>;
export declare function organizationFromJSON(jsonString: string): SafeParseResult<Organization, SDKValidationError>;
/** @internal */
export declare const TicketingReadTicket4$inboundSchema: z.ZodType<TicketingReadTicket4, z.ZodTypeDef, unknown>;
export declare function ticketingReadTicket4FromJSON(jsonString: string): SafeParseResult<TicketingReadTicket4, SDKValidationError>;
/** @internal */
export declare const TicketingReadTicketSourceValue$inboundSchema: z.ZodType<TicketingReadTicketSourceValue, z.ZodTypeDef, unknown>;
export declare function ticketingReadTicketSourceValueFromJSON(jsonString: string): SafeParseResult<TicketingReadTicketSourceValue, SDKValidationError>;
/** @internal */
export declare const TicketingReadTicketValue$inboundSchema: z.ZodType<TicketingReadTicketValueOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const Priority$inboundSchema: z.ZodType<Priority, z.ZodTypeDef, unknown>;
export declare function priorityFromJSON(jsonString: string): SafeParseResult<Priority, SDKValidationError>;
/** @internal */
export declare const TicketingReadTicketSchemas4$inboundSchema: z.ZodType<TicketingReadTicketSchemas4, z.ZodTypeDef, unknown>;
export declare function ticketingReadTicketSchemas4FromJSON(jsonString: string): SafeParseResult<TicketingReadTicketSchemas4, SDKValidationError>;
/** @internal */
export declare const TicketingReadTicketSchemasSourceValue$inboundSchema: z.ZodType<TicketingReadTicketSchemasSourceValue, z.ZodTypeDef, unknown>;
export declare function ticketingReadTicketSchemasSourceValueFromJSON(jsonString: string): SafeParseResult<TicketingReadTicketSchemasSourceValue, SDKValidationError>;
/** @internal */
export declare const TicketingReadTicketSchemasValue$inboundSchema: z.ZodType<TicketingReadTicketSchemasValueOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const TicketingReadTicketSchemasType$inboundSchema: z.ZodType<TicketingReadTicketSchemasType, z.ZodTypeDef, unknown>;
export declare function ticketingReadTicketSchemasTypeFromJSON(jsonString: string): SafeParseResult<TicketingReadTicketSchemasType, SDKValidationError>;
/** @internal */
export declare const TicketingReadTicketStatus$inboundSchema: z.ZodType<TicketingReadTicketStatus, z.ZodTypeDef, unknown>;
export declare function ticketingReadTicketStatusFromJSON(jsonString: string): SafeParseResult<TicketingReadTicketStatus, SDKValidationError>;
/** @internal */
export declare const TicketingReadTicketType$inboundSchema: z.ZodType<TicketingReadTicketType, z.ZodTypeDef, unknown>;
export declare function ticketingReadTicketTypeFromJSON(jsonString: string): SafeParseResult<TicketingReadTicketType, SDKValidationError>;
/** @internal */
export declare const TicketingReadTicket$inboundSchema: z.ZodType<TicketingReadTicket, z.ZodTypeDef, unknown>;
export declare function ticketingReadTicketFromJSON(jsonString: string): SafeParseResult<TicketingReadTicket, SDKValidationError>;
//# sourceMappingURL=ticketingreadticket.d.ts.map