import * as z from "zod";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { RawResponse, RawResponse$Outbound } from "./rawresponse.js";
export type Data = {
    /**
     * The timestamp when the record was created
     */
    createdAt?: Date | null | undefined;
    /**
     * The name of the file
     */
    fileName?: string | null | undefined;
    /**
     * The type of the file
     */
    fileType?: string | null | undefined;
    /**
     * The resource URL of the file
     */
    fileUrl?: string | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
    /**
     * The size of the file
     */
    size?: number | null | undefined;
    /**
     * The reference ticket ID the attachment belongs to
     */
    ticketId?: string | null | undefined;
    /**
     * The timestamp when the record was last updated
     */
    updatedAt?: Date | null | undefined;
    /**
     * The user who uploaded the file
     */
    userId?: string | null | undefined;
};
export type TicketingAttachmentResult = {
    data?: Data | null | undefined;
    raw?: Array<RawResponse> | null | undefined;
};
/** @internal */
export declare const Data$inboundSchema: z.ZodType<Data, z.ZodTypeDef, unknown>;
/** @internal */
export type Data$Outbound = {
    created_at?: string | null | undefined;
    file_name?: string | null | undefined;
    file_type?: string | null | undefined;
    file_url?: string | null | undefined;
    id?: string | null | undefined;
    remote_id?: string | null | undefined;
    size?: number | null | undefined;
    ticket_id?: string | null | undefined;
    updated_at?: string | null | undefined;
    user_id?: string | null | undefined;
};
/** @internal */
export declare const Data$outboundSchema: z.ZodType<Data$Outbound, z.ZodTypeDef, Data>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Data$ {
    /** @deprecated use `Data$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Data, z.ZodTypeDef, unknown>;
    /** @deprecated use `Data$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Data$Outbound, z.ZodTypeDef, Data>;
    /** @deprecated use `Data$Outbound` instead. */
    type Outbound = Data$Outbound;
}
export declare function dataToJSON(data: Data): string;
export declare function dataFromJSON(jsonString: string): SafeParseResult<Data, SDKValidationError>;
/** @internal */
export declare const TicketingAttachmentResult$inboundSchema: z.ZodType<TicketingAttachmentResult, z.ZodTypeDef, unknown>;
/** @internal */
export type TicketingAttachmentResult$Outbound = {
    data?: Data$Outbound | null | undefined;
    raw?: Array<RawResponse$Outbound> | null | undefined;
};
/** @internal */
export declare const TicketingAttachmentResult$outboundSchema: z.ZodType<TicketingAttachmentResult$Outbound, z.ZodTypeDef, TicketingAttachmentResult>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace TicketingAttachmentResult$ {
    /** @deprecated use `TicketingAttachmentResult$inboundSchema` instead. */
    const inboundSchema: z.ZodType<TicketingAttachmentResult, z.ZodTypeDef, unknown>;
    /** @deprecated use `TicketingAttachmentResult$outboundSchema` instead. */
    const outboundSchema: z.ZodType<TicketingAttachmentResult$Outbound, z.ZodTypeDef, TicketingAttachmentResult>;
    /** @deprecated use `TicketingAttachmentResult$Outbound` instead. */
    type Outbound = TicketingAttachmentResult$Outbound;
}
export declare function ticketingAttachmentResultToJSON(ticketingAttachmentResult: TicketingAttachmentResult): string;
export declare function ticketingAttachmentResultFromJSON(jsonString: string): SafeParseResult<TicketingAttachmentResult, SDKValidationError>;
//# sourceMappingURL=ticketingattachmentresult.d.ts.map