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 { RawResponse, RawResponse$Outbound } from "./rawresponse.js";
/**
 * The type of the collection.
 */
export declare enum TicketingCollectionResultType {
    Project = "project",
    Component = "component",
    UnmappedValue = "unmapped_value"
}
/**
 * The type of the collection.
 */
export type TicketingCollectionResultTypeOpen = OpenEnum<typeof TicketingCollectionResultType>;
export type TicketingCollectionResultData = {
    /**
     * The timestamp when the record was created
     */
    createdAt?: Date | null | undefined;
    /**
     * The description of the collection
     */
    description?: string | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    /**
     * The user-friendly key of the collection
     */
    key?: string | null | undefined;
    /**
     * The name of the collection
     */
    name?: string | null | undefined;
    /**
     * The organization id related to the collection
     */
    organizationId?: string | null | undefined;
    /**
     * The parent collection of the collection
     */
    parentId?: string | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
    /**
     * The type of the collection.
     */
    type?: TicketingCollectionResultTypeOpen | null | undefined;
    /**
     * The timestamp when the record was last updated
     */
    updatedAt?: Date | null | undefined;
};
export type TicketingCollectionResult = {
    data?: TicketingCollectionResultData | null | undefined;
    raw?: Array<RawResponse> | null | undefined;
};
/** @internal */
export declare const TicketingCollectionResultType$inboundSchema: z.ZodType<TicketingCollectionResultTypeOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const TicketingCollectionResultType$outboundSchema: z.ZodType<TicketingCollectionResultTypeOpen, z.ZodTypeDef, TicketingCollectionResultTypeOpen>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace TicketingCollectionResultType$ {
    /** @deprecated use `TicketingCollectionResultType$inboundSchema` instead. */
    const inboundSchema: z.ZodType<TicketingCollectionResultTypeOpen, z.ZodTypeDef, unknown>;
    /** @deprecated use `TicketingCollectionResultType$outboundSchema` instead. */
    const outboundSchema: z.ZodType<TicketingCollectionResultTypeOpen, z.ZodTypeDef, TicketingCollectionResultTypeOpen>;
}
/** @internal */
export declare const TicketingCollectionResultData$inboundSchema: z.ZodType<TicketingCollectionResultData, z.ZodTypeDef, unknown>;
/** @internal */
export type TicketingCollectionResultData$Outbound = {
    created_at?: string | null | undefined;
    description?: string | null | undefined;
    id?: string | null | undefined;
    key?: string | null | undefined;
    name?: string | null | undefined;
    organization_id?: string | null | undefined;
    parent_id?: string | null | undefined;
    remote_id?: string | null | undefined;
    type?: string | null | undefined;
    updated_at?: string | null | undefined;
};
/** @internal */
export declare const TicketingCollectionResultData$outboundSchema: z.ZodType<TicketingCollectionResultData$Outbound, z.ZodTypeDef, TicketingCollectionResultData>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace TicketingCollectionResultData$ {
    /** @deprecated use `TicketingCollectionResultData$inboundSchema` instead. */
    const inboundSchema: z.ZodType<TicketingCollectionResultData, z.ZodTypeDef, unknown>;
    /** @deprecated use `TicketingCollectionResultData$outboundSchema` instead. */
    const outboundSchema: z.ZodType<TicketingCollectionResultData$Outbound, z.ZodTypeDef, TicketingCollectionResultData>;
    /** @deprecated use `TicketingCollectionResultData$Outbound` instead. */
    type Outbound = TicketingCollectionResultData$Outbound;
}
export declare function ticketingCollectionResultDataToJSON(ticketingCollectionResultData: TicketingCollectionResultData): string;
export declare function ticketingCollectionResultDataFromJSON(jsonString: string): SafeParseResult<TicketingCollectionResultData, SDKValidationError>;
/** @internal */
export declare const TicketingCollectionResult$inboundSchema: z.ZodType<TicketingCollectionResult, z.ZodTypeDef, unknown>;
/** @internal */
export type TicketingCollectionResult$Outbound = {
    data?: TicketingCollectionResultData$Outbound | null | undefined;
    raw?: Array<RawResponse$Outbound> | null | undefined;
};
/** @internal */
export declare const TicketingCollectionResult$outboundSchema: z.ZodType<TicketingCollectionResult$Outbound, z.ZodTypeDef, TicketingCollectionResult>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace TicketingCollectionResult$ {
    /** @deprecated use `TicketingCollectionResult$inboundSchema` instead. */
    const inboundSchema: z.ZodType<TicketingCollectionResult, z.ZodTypeDef, unknown>;
    /** @deprecated use `TicketingCollectionResult$outboundSchema` instead. */
    const outboundSchema: z.ZodType<TicketingCollectionResult$Outbound, z.ZodTypeDef, TicketingCollectionResult>;
    /** @deprecated use `TicketingCollectionResult$Outbound` instead. */
    type Outbound = TicketingCollectionResult$Outbound;
}
export declare function ticketingCollectionResultToJSON(ticketingCollectionResult: TicketingCollectionResult): string;
export declare function ticketingCollectionResultFromJSON(jsonString: string): SafeParseResult<TicketingCollectionResult, SDKValidationError>;
//# sourceMappingURL=ticketingcollectionresult.d.ts.map