import * as z from "zod/v3";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export type FileUploadFile = {
    fileName: string;
    content: ReadableStream<Uint8Array> | Blob | ArrayBuffer | Uint8Array;
};
/**
 * The intended purpose of the uploaded file.
 */
export declare const Purpose: {
    readonly Retrieval: "retrieval";
    readonly KnowledgeDatasource: "knowledge_datasource";
    readonly Batch: "batch";
};
/**
 * The intended purpose of the uploaded file.
 */
export type Purpose = ClosedEnum<typeof Purpose>;
export type FileUploadRequestBody = {
    /**
     * The file to be uploaded.
     */
    file: FileUploadFile | Blob;
    /**
     * The intended purpose of the uploaded file.
     */
    purpose?: Purpose | undefined;
};
/**
 * The intended purpose of the uploaded file.
 */
export declare const FileUploadPurpose: {
    readonly Retrieval: "retrieval";
    readonly KnowledgeDatasource: "knowledge_datasource";
    readonly Batch: "batch";
};
/**
 * The intended purpose of the uploaded file.
 */
export type FileUploadPurpose = ClosedEnum<typeof FileUploadPurpose>;
/**
 * File uploaded successfully
 */
export type FileUploadResponseBody = {
    id: string;
    /**
     * path to the file in the storage
     */
    objectName: string;
    /**
     * The intended purpose of the uploaded file.
     */
    purpose: FileUploadPurpose;
    bytes: number;
    fileName: string;
    /**
     * The id of the resource
     */
    workspaceId: string;
    /**
     * The date and time the resource was created
     */
    created?: Date | undefined;
};
/** @internal */
export declare const FileUploadFile$inboundSchema: z.ZodType<FileUploadFile, z.ZodTypeDef, unknown>;
/** @internal */
export type FileUploadFile$Outbound = {
    fileName: string;
    content: ReadableStream<Uint8Array> | Blob | ArrayBuffer | Uint8Array;
};
/** @internal */
export declare const FileUploadFile$outboundSchema: z.ZodType<FileUploadFile$Outbound, z.ZodTypeDef, FileUploadFile>;
export declare function fileUploadFileToJSON(fileUploadFile: FileUploadFile): string;
export declare function fileUploadFileFromJSON(jsonString: string): SafeParseResult<FileUploadFile, SDKValidationError>;
/** @internal */
export declare const Purpose$inboundSchema: z.ZodNativeEnum<typeof Purpose>;
/** @internal */
export declare const Purpose$outboundSchema: z.ZodNativeEnum<typeof Purpose>;
/** @internal */
export declare const FileUploadRequestBody$inboundSchema: z.ZodType<FileUploadRequestBody, z.ZodTypeDef, unknown>;
/** @internal */
export type FileUploadRequestBody$Outbound = {
    file: FileUploadFile$Outbound | Blob;
    purpose: string;
};
/** @internal */
export declare const FileUploadRequestBody$outboundSchema: z.ZodType<FileUploadRequestBody$Outbound, z.ZodTypeDef, FileUploadRequestBody>;
export declare function fileUploadRequestBodyToJSON(fileUploadRequestBody: FileUploadRequestBody): string;
export declare function fileUploadRequestBodyFromJSON(jsonString: string): SafeParseResult<FileUploadRequestBody, SDKValidationError>;
/** @internal */
export declare const FileUploadPurpose$inboundSchema: z.ZodNativeEnum<typeof FileUploadPurpose>;
/** @internal */
export declare const FileUploadPurpose$outboundSchema: z.ZodNativeEnum<typeof FileUploadPurpose>;
/** @internal */
export declare const FileUploadResponseBody$inboundSchema: z.ZodType<FileUploadResponseBody, z.ZodTypeDef, unknown>;
/** @internal */
export type FileUploadResponseBody$Outbound = {
    _id: string;
    object_name: string;
    purpose: string;
    bytes: number;
    file_name: string;
    workspace_id: string;
    created: string;
};
/** @internal */
export declare const FileUploadResponseBody$outboundSchema: z.ZodType<FileUploadResponseBody$Outbound, z.ZodTypeDef, FileUploadResponseBody>;
export declare function fileUploadResponseBodyToJSON(fileUploadResponseBody: FileUploadResponseBody): string;
export declare function fileUploadResponseBodyFromJSON(jsonString: string): SafeParseResult<FileUploadResponseBody, SDKValidationError>;
//# sourceMappingURL=fileupload.d.ts.map