import { APIResource } from "../../core/resource.mjs";
import { APIPromise } from "../../core/api-promise.mjs";
import { RequestOptions } from "../../internal/request-options.mjs";
export declare class BaseLOADocuments extends APIResource {
    static readonly _key: readonly ['addressing', 'loaDocuments'];
    /**
     * Submit LOA document (pdf format) under the account.
     *
     * @example
     * ```ts
     * const loaDocument =
     *   await client.addressing.loaDocuments.create({
     *     account_id: '258def64c72dae45f3e4c8516e2111f2',
     *     loa_document: '@document.pdf',
     *   });
     * ```
     */
    create(params: LOADocumentCreateParams, options?: RequestOptions): APIPromise<LOADocumentCreateResponse>;
    /**
     * Download specified LOA document under the account.
     *
     * @example
     * ```ts
     * const loaDocument =
     *   await client.addressing.loaDocuments.get(
     *     'd933b1530bc56c9953cf8ce166da8004',
     *     { account_id: '258def64c72dae45f3e4c8516e2111f2' },
     *   );
     *
     * const content = await loaDocument.blob();
     * console.log(content);
     * ```
     */
    get(loaDocumentID: string, params: LOADocumentGetParams, options?: RequestOptions): APIPromise<Response>;
}
export declare class LOADocuments extends BaseLOADocuments {
}
export interface LOADocumentCreateResponse {
    /**
     * Identifier for the uploaded LOA document.
     */
    id?: string | null;
    /**
     * Identifier of a Cloudflare account.
     */
    account_id?: string;
    /**
     * Whether the LOA has been auto-generated for the prefix owner by Cloudflare.
     */
    auto_generated?: boolean;
    created?: string;
    /**
     * Name of LOA document. Max file size 10MB, and supported filetype is pdf.
     */
    filename?: string;
    /**
     * File size of the uploaded LOA document.
     */
    size_bytes?: number;
    /**
     * Whether the LOA has been verified by Cloudflare staff.
     */
    verified?: boolean;
    /**
     * Timestamp of the moment the LOA was marked as validated.
     */
    verified_at?: string | null;
}
export interface LOADocumentCreateParams {
    /**
     * Path param: Identifier of a Cloudflare account.
     */
    account_id: string;
    /**
     * Body param: LOA document to upload.
     */
    loa_document: string;
}
export interface LOADocumentGetParams {
    /**
     * Identifier of a Cloudflare account.
     */
    account_id: string;
}
export declare namespace LOADocuments {
    export { type LOADocumentCreateResponse as LOADocumentCreateResponse, type LOADocumentCreateParams as LOADocumentCreateParams, type LOADocumentGetParams as LOADocumentGetParams, };
}
//# sourceMappingURL=loa-documents.d.mts.map