import * as Schema from "effect/Schema";
export declare const PostCustomersCustomerFundingInstructionsInput: Schema.Struct<{
    readonly customer: Schema.String;
    readonly bank_transfer: Schema.Struct<{
        readonly eu_bank_transfer: Schema.optional<Schema.Struct<{
            readonly country: Schema.String;
        }>>;
        readonly requested_address_types: Schema.optional<Schema.$Array<Schema.Literals<readonly ["iban", "sort_code", "spei", "zengin"]>>>;
        readonly type: Schema.Literals<readonly ["eu_bank_transfer", "gb_bank_transfer", "jp_bank_transfer", "mx_bank_transfer", "us_bank_transfer"]>;
    }>;
    readonly currency: Schema.String;
    readonly expand: Schema.optional<Schema.$Array<Schema.String>>;
    readonly funding_type: Schema.Literals<readonly ["bank_transfer"]>;
}>;
export type PostCustomersCustomerFundingInstructionsInput = typeof PostCustomersCustomerFundingInstructionsInput.Type;
export declare const PostCustomersCustomerFundingInstructionsOutput: Schema.Struct<{
    readonly bank_transfer: Schema.Struct<{
        readonly country: Schema.String;
        readonly financial_addresses: Schema.$Array<Schema.Struct<{
            readonly aba: Schema.optional<Schema.Struct<{
                readonly account_holder_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly account_holder_name: Schema.String;
                readonly account_number: Schema.String;
                readonly account_type: Schema.String;
                readonly bank_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly bank_name: Schema.String;
                readonly routing_number: Schema.String;
            }>>;
            readonly iban: Schema.optional<Schema.Struct<{
                readonly account_holder_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly account_holder_name: Schema.String;
                readonly bank_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly bic: Schema.String;
                readonly country: Schema.String;
                readonly iban: Schema.String;
            }>>;
            readonly sort_code: Schema.optional<Schema.Struct<{
                readonly account_holder_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly account_holder_name: Schema.String;
                readonly account_number: Schema.String;
                readonly bank_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly sort_code: Schema.String;
            }>>;
            readonly spei: Schema.optional<Schema.Struct<{
                readonly account_holder_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly account_holder_name: Schema.String;
                readonly bank_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly bank_code: Schema.String;
                readonly bank_name: Schema.String;
                readonly clabe: Schema.String;
            }>>;
            readonly supported_networks: Schema.optional<Schema.$Array<Schema.Literals<readonly ["ach", "bacs", "domestic_wire_us", "fps", "sepa", "spei", "swift", "zengin"]>>>;
            readonly swift: Schema.optional<Schema.Struct<{
                readonly account_holder_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly account_holder_name: Schema.String;
                readonly account_number: Schema.String;
                readonly account_type: Schema.String;
                readonly bank_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly bank_name: Schema.String;
                readonly swift_code: Schema.String;
            }>>;
            readonly type: Schema.Literals<readonly ["aba", "iban", "sort_code", "spei", "swift", "zengin"]>;
            readonly zengin: Schema.optional<Schema.Struct<{
                readonly account_holder_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly account_holder_name: Schema.NullOr<Schema.String>;
                readonly account_number: Schema.NullOr<Schema.String>;
                readonly account_type: Schema.NullOr<Schema.String>;
                readonly bank_address: Schema.Struct<{
                    readonly city: Schema.NullOr<Schema.String>;
                    readonly country: Schema.NullOr<Schema.String>;
                    readonly line1: Schema.NullOr<Schema.String>;
                    readonly line2: Schema.NullOr<Schema.String>;
                    readonly postal_code: Schema.NullOr<Schema.String>;
                    readonly state: Schema.NullOr<Schema.String>;
                }>;
                readonly bank_code: Schema.NullOr<Schema.String>;
                readonly bank_name: Schema.NullOr<Schema.String>;
                readonly branch_code: Schema.NullOr<Schema.String>;
                readonly branch_name: Schema.NullOr<Schema.String>;
            }>>;
        }>>;
        readonly type: Schema.Literals<readonly ["eu_bank_transfer", "jp_bank_transfer"]>;
    }>;
    readonly currency: Schema.String;
    readonly funding_type: Schema.Literals<readonly ["bank_transfer"]>;
    readonly livemode: Schema.Boolean;
    readonly object: Schema.Literals<readonly ["funding_instructions"]>;
}>;
export type PostCustomersCustomerFundingInstructionsOutput = typeof PostCustomersCustomerFundingInstructionsOutput.Type;
/**
 * Create or retrieve funding instructions for a customer cash balance
 *
 * <p>Retrieve funding instructions for a customer cash balance. If funding instructions do not yet exist for the customer, new
 * funding instructions will be created. If funding instructions have already been created for a given customer, the same
 * funding instructions will be retrieved. In other words, we will return the same funding instructions each time.</p>
 */
export declare const PostCustomersCustomerFundingInstructions: import("@distilled.cloud/core/client").OperationMethod<{
    readonly bank_transfer: {
        readonly eu_bank_transfer?: {
            readonly country: string;
        } | undefined;
        readonly requested_address_types?: readonly ("iban" | "sort_code" | "spei" | "zengin")[] | undefined;
        readonly type: "eu_bank_transfer" | "gb_bank_transfer" | "jp_bank_transfer" | "mx_bank_transfer" | "us_bank_transfer";
    };
    readonly currency: string;
    readonly customer: string;
    readonly expand?: readonly string[] | undefined;
    readonly funding_type: "bank_transfer";
}, {
    readonly bank_transfer: {
        readonly country: string;
        readonly financial_addresses: readonly {
            readonly aba?: {
                readonly account_holder_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly account_holder_name: string;
                readonly account_number: string;
                readonly account_type: string;
                readonly bank_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly bank_name: string;
                readonly routing_number: string;
            } | undefined;
            readonly iban?: {
                readonly account_holder_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly account_holder_name: string;
                readonly bank_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly bic: string;
                readonly country: string;
                readonly iban: string;
            } | undefined;
            readonly sort_code?: {
                readonly account_holder_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly account_holder_name: string;
                readonly account_number: string;
                readonly bank_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly sort_code: string;
            } | undefined;
            readonly spei?: {
                readonly account_holder_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly account_holder_name: string;
                readonly bank_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly bank_code: string;
                readonly bank_name: string;
                readonly clabe: string;
            } | undefined;
            readonly supported_networks?: readonly ("ach" | "bacs" | "domestic_wire_us" | "fps" | "sepa" | "spei" | "swift" | "zengin")[] | undefined;
            readonly swift?: {
                readonly account_holder_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly account_holder_name: string;
                readonly account_number: string;
                readonly account_type: string;
                readonly bank_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly bank_name: string;
                readonly swift_code: string;
            } | undefined;
            readonly type: "aba" | "iban" | "sort_code" | "spei" | "swift" | "zengin";
            readonly zengin?: {
                readonly account_holder_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly account_holder_name: string | null;
                readonly account_number: string | null;
                readonly account_type: string | null;
                readonly bank_address: {
                    readonly city: string | null;
                    readonly country: string | null;
                    readonly line1: string | null;
                    readonly line2: string | null;
                    readonly postal_code: string | null;
                    readonly state: string | null;
                };
                readonly bank_code: string | null;
                readonly bank_name: string | null;
                readonly branch_code: string | null;
                readonly branch_name: string | null;
            } | undefined;
        }[];
        readonly type: "eu_bank_transfer" | "jp_bank_transfer";
    };
    readonly currency: string;
    readonly funding_type: "bank_transfer";
    readonly livemode: boolean;
    readonly object: "funding_instructions";
}, never, import("../credentials.ts").Credentials>;
//# sourceMappingURL=PostCustomersCustomerFundingInstructions.d.ts.map