import { verifyReceizOfflineSealedFile } from "@receiz/sdk/offline";
type OfflineVerification = Awaited<ReturnType<typeof verifyReceizOfflineSealedFile>>;
export declare class ArtifactInputError extends Error {
    readonly code: string;
    readonly stage: "attachment_authorization" | "download" | "file_reading" | "canonical_verification";
    constructor(code: string, stage: "attachment_authorization" | "download" | "file_reading" | "canonical_verification");
}
export declare const RECEIZ_VERIFY_UPLOADED_ARTIFACT_TOOL: {
    name: string;
    description: string;
    inputSchema: {
        type: string;
        properties: {
            file: {
                type: string[];
                description: string;
                properties: {
                    download_url: {
                        type: string;
                    };
                    file_id: {
                        type: string;
                    };
                    mime_type: {
                        type: string;
                    };
                    file_name: {
                        type: string;
                    };
                };
                required: string[];
                additionalProperties: boolean;
            };
        };
        required: string[];
        additionalProperties: boolean;
    };
    annotations: {
        readOnlyHint: boolean;
        destructiveHint: boolean;
        openWorldHint: boolean;
        idempotentHint: boolean;
    };
    _meta: {
        "openai/fileParams": string[];
    };
};
/** Host configuration only; never accept permitted origins through a tool call.
 * The enclosing relay authenticates the request owner and retains exact attempts.
 * A selected file's capability URL grants retrieval only, never artifact authority.
 */
export declare function readAuthorizedUploadedArtifact(raw: unknown, options?: {
    allowedOrigins?: readonly string[];
    fetch?: typeof globalThis.fetch;
}): Promise<{
    bytes: Buffer<ArrayBuffer>;
    filename: string;
    mimeType: undefined;
    transport: {
        byteLength: number;
        sha256: string;
        authority: boolean;
    };
} | {
    bytes: Uint8Array<ArrayBufferLike>;
    filename: string;
    mimeType: string | undefined;
    transport: {
        byteLength: number;
        sha256: string;
        authority: boolean;
    };
}>;
export declare function verifyUploadedArtifact(raw: unknown, options?: {
    allowedOrigins?: readonly string[];
    fetch?: typeof globalThis.fetch;
}): Promise<{
    verification: OfflineVerification;
    verdictObtained: boolean;
    transport: Awaited<ReturnType<typeof readAuthorizedUploadedArtifact>>["transport"];
    mcpAuthority: boolean;
}>;
export {};
//# sourceMappingURL=uploadedArtifact.d.ts.map