import { TransferReceiptListParamsSchema, TransferReceiptCreateRequestSchema, TransferReceiptUpdateRequestSchema } from '../schemas';
import type { z } from 'zod';
import type { NexusClient } from '../client';
type ExecuteRequest = NexusClient['executeRequest'];
type TransferReceiptListParams = z.infer<typeof TransferReceiptListParamsSchema>;
type TransferReceiptCreateRequest = z.infer<typeof TransferReceiptCreateRequestSchema>;
type TransferReceiptUpdateRequest = z.infer<typeof TransferReceiptUpdateRequestSchema>;
/**
 * Creates the transferReceipt resource methods
 * OpenAPI Path: /transfer-receipt → transferReceipt.*
 * @description Methods for managing transfer receipt documents for comprehensive transfer tracking and confirmation
 */
export declare function createTransferReceiptResource(executeRequest: ExecuteRequest): {
    /**
     * Retrieve a list of transfer receipt documents with optional filtering
     * @description Returns transfer receipts with pagination and filtering by transfer number, status, or receipt date
     * @fullPath api.nexus.transferReceipt.list
     * @service nexus
     * @domain warehouse-management
     * @dataMethod transferReceiptData.list
     * @discoverable true
     */
    list: (params?: TransferReceiptListParams) => Promise<{
        params: Record<string, unknown> | unknown[];
        data: z.objectInputType<{
            transferReceiptUid: z.ZodNumber;
        }, z.ZodTypeAny, "passthrough">[];
        options: Record<string, unknown> | unknown[];
        status: number;
        message: string;
        count: number;
        total: number;
        totalResults: number;
    }>;
    /**
     * Retrieve details for a specific transfer receipt document
     * @description Returns complete details for a transfer receipt including JSON data and confirmation information
     * @fullPath api.nexus.transferReceipt.get
     * @service nexus
     * @domain warehouse-management
     * @dataMethod transferReceiptData.get
     * @discoverable true
     */
    get: (transferReceiptUid: number | string) => Promise<{
        params: Record<string, unknown> | unknown[];
        data: {
            transferReceiptUid: number;
        } & {
            [k: string]: unknown;
        };
        options: Record<string, unknown> | unknown[];
        status: number;
        message: string;
        count: number;
        total: number;
        totalResults: number;
    }>;
    /**
     * Create a new transfer receipt document
     * @description Creates a transfer receipt document for comprehensive tracking and confirmation of transfer completion
     * @fullPath api.nexus.transferReceipt.create
     * @service nexus
     * @domain warehouse-management
     * @dataMethod transferReceiptData.create
     * @discoverable true
     */
    create: (receiptData: TransferReceiptCreateRequest) => Promise<{
        params: Record<string, unknown> | unknown[];
        data: {
            transferReceiptUid: number;
        } & {
            [k: string]: unknown;
        };
        options: Record<string, unknown> | unknown[];
        status: number;
        message: string;
        count: number;
        total: number;
        totalResults: number;
    }>;
    /**
     * Update an existing transfer receipt
     * @description Updates transfer receipt status and properties
     * @fullPath api.nexus.transferReceipt.update
     * @service nexus
     * @domain warehouse-management
     * @dataMethod transferReceiptData.update
     * @discoverable true
     */
    update: (transferReceiptUid: number | string, updateData: TransferReceiptUpdateRequest) => Promise<{
        params: Record<string, unknown> | unknown[];
        data: {
            transferReceiptUid: number;
        } & {
            [k: string]: unknown;
        };
        options: Record<string, unknown> | unknown[];
        status: number;
        message: string;
        count: number;
        total: number;
        totalResults: number;
    }>;
    /**
     * Soft delete a transfer receipt
     * @description Marks a transfer receipt as deleted
     * @fullPath api.nexus.transferReceipt.delete
     * @service nexus
     * @domain warehouse-management
     * @dataMethod transferReceiptData.delete
     * @discoverable true
     */
    delete: (transferReceiptUid: number | string) => Promise<{
        params: Record<string, unknown> | unknown[];
        data: {
            transferReceiptUid: number;
        } & {
            [k: string]: unknown;
        };
        options: Record<string, unknown> | unknown[];
        status: number;
        message: string;
        count: number;
        total: number;
        totalResults: number;
    }>;
};
/**
 * Creates the transferReceiptData resource methods (data-only versions)
 */
export declare function createTransferReceiptDataResource(transferReceipt: ReturnType<typeof createTransferReceiptResource>): {
    list: (params?: TransferReceiptListParams) => Promise<z.objectInputType<{
        transferReceiptUid: z.ZodNumber;
    }, z.ZodTypeAny, "passthrough">[]>;
    get: (transferReceiptUid: number | string) => Promise<{
        transferReceiptUid: number;
    } & {
        [k: string]: unknown;
    }>;
    create: (receiptData: TransferReceiptCreateRequest) => Promise<{
        transferReceiptUid: number;
    } & {
        [k: string]: unknown;
    }>;
    update: (transferReceiptUid: number | string, updateData: TransferReceiptUpdateRequest) => Promise<{
        transferReceiptUid: number;
    } & {
        [k: string]: unknown;
    }>;
    delete: (transferReceiptUid: number | string) => Promise<{
        transferReceiptUid: number;
    } & {
        [k: string]: unknown;
    }>;
};
export type TransferReceiptResource = ReturnType<typeof createTransferReceiptResource>;
export type TransferReceiptDataResource = ReturnType<typeof createTransferReceiptDataResource>;
export {};
//# sourceMappingURL=transfer-receipt.d.ts.map