import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv1";
import type { Address, User } from "./common_pb.js";
import type { JsonObject, Message } from "@bufbuild/protobuf";
/**
 * Describes the file gfxcafe/oku/account/v1/bridge.proto.
 */
export declare const file_gfxcafe_oku_account_v1_bridge: GenFile;
/**
 * V0ExchangeRatesRequest (empty)
 *
 * @generated from message gfxcafe.oku.account.v1.V0ExchangeRatesRequest
 */
export type V0ExchangeRatesRequest = Message<"gfxcafe.oku.account.v1.V0ExchangeRatesRequest"> & {};
/**
 * Describes the message gfxcafe.oku.account.v1.V0ExchangeRatesRequest.
 * Use `create(V0ExchangeRatesRequestSchema)` to create a new message.
 */
export declare const V0ExchangeRatesRequestSchema: GenMessage<V0ExchangeRatesRequest>;
/**
 * V0ExchangeRatesResponse returns exchange rates
 *
 * @generated from message gfxcafe.oku.account.v1.V0ExchangeRatesResponse
 */
export type V0ExchangeRatesResponse = Message<"gfxcafe.oku.account.v1.V0ExchangeRatesResponse"> & {
    /**
     * Exchange rates data
     *
     * @generated from field: google.protobuf.Struct rates = 1;
     */
    rates?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0ExchangeRatesResponse.
 * Use `create(V0ExchangeRatesResponseSchema)` to create a new message.
 */
export declare const V0ExchangeRatesResponseSchema: GenMessage<V0ExchangeRatesResponse>;
/**
 * V0HealthRequest (empty)
 *
 * @generated from message gfxcafe.oku.account.v1.V0HealthRequest
 */
export type V0HealthRequest = Message<"gfxcafe.oku.account.v1.V0HealthRequest"> & {};
/**
 * Describes the message gfxcafe.oku.account.v1.V0HealthRequest.
 * Use `create(V0HealthRequestSchema)` to create a new message.
 */
export declare const V0HealthRequestSchema: GenMessage<V0HealthRequest>;
/**
 * V0HealthResponse returns health status
 *
 * @generated from message gfxcafe.oku.account.v1.V0HealthResponse
 */
export type V0HealthResponse = Message<"gfxcafe.oku.account.v1.V0HealthResponse"> & {
    /**
     * Status
     *
     * @generated from field: string status = 1;
     */
    status: string;
    /**
     * User
     *
     * @generated from field: gfxcafe.oku.account.v1.User user = 2;
     */
    user?: User;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0HealthResponse.
 * Use `create(V0HealthResponseSchema)` to create a new message.
 */
export declare const V0HealthResponseSchema: GenMessage<V0HealthResponse>;
/**
 * V0ListsCountriesRequest (empty)
 *
 * @generated from message gfxcafe.oku.account.v1.V0ListsCountriesRequest
 */
export type V0ListsCountriesRequest = Message<"gfxcafe.oku.account.v1.V0ListsCountriesRequest"> & {};
/**
 * Describes the message gfxcafe.oku.account.v1.V0ListsCountriesRequest.
 * Use `create(V0ListsCountriesRequestSchema)` to create a new message.
 */
export declare const V0ListsCountriesRequestSchema: GenMessage<V0ListsCountriesRequest>;
/**
 * V0ListsCountriesResponse returns countries list
 *
 * @generated from message gfxcafe.oku.account.v1.V0ListsCountriesResponse
 */
export type V0ListsCountriesResponse = Message<"gfxcafe.oku.account.v1.V0ListsCountriesResponse"> & {
    /**
     * Countries data
     *
     * @generated from field: google.protobuf.Struct countries = 1;
     */
    countries?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0ListsCountriesResponse.
 * Use `create(V0ListsCountriesResponseSchema)` to create a new message.
 */
export declare const V0ListsCountriesResponseSchema: GenMessage<V0ListsCountriesResponse>;
/**
 * V0KycLinksRequest for listing KYC links
 *
 * @generated from message gfxcafe.oku.account.v1.V0KycLinksRequest
 */
export type V0KycLinksRequest = Message<"gfxcafe.oku.account.v1.V0KycLinksRequest"> & {};
/**
 * Describes the message gfxcafe.oku.account.v1.V0KycLinksRequest.
 * Use `create(V0KycLinksRequestSchema)` to create a new message.
 */
export declare const V0KycLinksRequestSchema: GenMessage<V0KycLinksRequest>;
/**
 * V0KycLinksResponse returns KYC links list
 *
 * @generated from message gfxcafe.oku.account.v1.V0KycLinksResponse
 */
export type V0KycLinksResponse = Message<"gfxcafe.oku.account.v1.V0KycLinksResponse"> & {
    /**
     * KYC links data
     *
     * @generated from field: google.protobuf.Struct kyc_links = 1;
     */
    kycLinks?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0KycLinksResponse.
 * Use `create(V0KycLinksResponseSchema)` to create a new message.
 */
export declare const V0KycLinksResponseSchema: GenMessage<V0KycLinksResponse>;
/**
 * V0KycLinksKycLinkIdRequest for getting specific KYC link
 *
 * @generated from message gfxcafe.oku.account.v1.V0KycLinksKycLinkIdRequest
 */
export type V0KycLinksKycLinkIdRequest = Message<"gfxcafe.oku.account.v1.V0KycLinksKycLinkIdRequest"> & {
    /**
     * KYC link ID
     *
     * @generated from field: string kyc_link_id = 1;
     */
    kycLinkId: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0KycLinksKycLinkIdRequest.
 * Use `create(V0KycLinksKycLinkIdRequestSchema)` to create a new message.
 */
export declare const V0KycLinksKycLinkIdRequestSchema: GenMessage<V0KycLinksKycLinkIdRequest>;
/**
 * V0KycLinksKycLinkIdResponse returns specific KYC link
 *
 * @generated from message gfxcafe.oku.account.v1.V0KycLinksKycLinkIdResponse
 */
export type V0KycLinksKycLinkIdResponse = Message<"gfxcafe.oku.account.v1.V0KycLinksKycLinkIdResponse"> & {
    /**
     * KYC link data
     *
     * @generated from field: google.protobuf.Struct kyc_link = 1;
     */
    kycLink?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0KycLinksKycLinkIdResponse.
 * Use `create(V0KycLinksKycLinkIdResponseSchema)` to create a new message.
 */
export declare const V0KycLinksKycLinkIdResponseSchema: GenMessage<V0KycLinksKycLinkIdResponse>;
/**
 * V0KycLinksCreateRequest for KYC link creation
 *
 * @generated from message gfxcafe.oku.account.v1.V0KycLinksCreateRequest
 */
export type V0KycLinksCreateRequest = Message<"gfxcafe.oku.account.v1.V0KycLinksCreateRequest"> & {
    /**
     * Full name
     *
     * @generated from field: string full_name = 1;
     */
    fullName: string;
    /**
     * Email
     *
     * @generated from field: string email = 2;
     */
    email: string;
    /**
     * Type
     *
     * @generated from field: string type = 3;
     */
    type: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0KycLinksCreateRequest.
 * Use `create(V0KycLinksCreateRequestSchema)` to create a new message.
 */
export declare const V0KycLinksCreateRequestSchema: GenMessage<V0KycLinksCreateRequest>;
/**
 * V0KycLinksCreateResponse returns KYC link details
 *
 * @generated from message gfxcafe.oku.account.v1.V0KycLinksCreateResponse
 */
export type V0KycLinksCreateResponse = Message<"gfxcafe.oku.account.v1.V0KycLinksCreateResponse"> & {
    /**
     * KYC link ID
     *
     * @generated from field: string id = 1;
     */
    id: string;
    /**
     * KYC link URL
     *
     * @generated from field: string kyc_link = 2;
     */
    kycLink: string;
    /**
     * TOS link URL
     *
     * @generated from field: string tos_link = 3;
     */
    tosLink: string;
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 4;
     */
    customerId: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0KycLinksCreateResponse.
 * Use `create(V0KycLinksCreateResponseSchema)` to create a new message.
 */
export declare const V0KycLinksCreateResponseSchema: GenMessage<V0KycLinksCreateResponse>;
/**
 * V0CustomersRequest for listing customers
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersRequest
 */
export type V0CustomersRequest = Message<"gfxcafe.oku.account.v1.V0CustomersRequest"> & {};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersRequest.
 * Use `create(V0CustomersRequestSchema)` to create a new message.
 */
export declare const V0CustomersRequestSchema: GenMessage<V0CustomersRequest>;
/**
 * V0CustomersResponse returns customers list
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersResponse
 */
export type V0CustomersResponse = Message<"gfxcafe.oku.account.v1.V0CustomersResponse"> & {
    /**
     * Customers data
     *
     * @generated from field: google.protobuf.Struct customers = 1;
     */
    customers?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersResponse.
 * Use `create(V0CustomersResponseSchema)` to create a new message.
 */
export declare const V0CustomersResponseSchema: GenMessage<V0CustomersResponse>;
/**
 * V0CustomersCustomerIdRequest for getting specific customer
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdRequest
 */
export type V0CustomersCustomerIdRequest = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdRequest"> & {
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 1;
     */
    customerId: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdRequest.
 * Use `create(V0CustomersCustomerIdRequestSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdRequestSchema: GenMessage<V0CustomersCustomerIdRequest>;
/**
 * V0CustomersCustomerIdResponse returns specific customer
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdResponse
 */
export type V0CustomersCustomerIdResponse = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdResponse"> & {
    /**
     * Customer data
     *
     * @generated from field: google.protobuf.Struct customer = 1;
     */
    customer?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdResponse.
 * Use `create(V0CustomersCustomerIdResponseSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdResponseSchema: GenMessage<V0CustomersCustomerIdResponse>;
/**
 * V0CustomersCustomerIdKycLinkRequest for getting customer KYC link
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdKycLinkRequest
 */
export type V0CustomersCustomerIdKycLinkRequest = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdKycLinkRequest"> & {
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 1;
     */
    customerId: string;
    /**
     * Endorsement (optional query param)
     *
     * @generated from field: string endorsement = 2;
     */
    endorsement: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdKycLinkRequest.
 * Use `create(V0CustomersCustomerIdKycLinkRequestSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdKycLinkRequestSchema: GenMessage<V0CustomersCustomerIdKycLinkRequest>;
/**
 * V0CustomersCustomerIdKycLinkResponse returns customer KYC link
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdKycLinkResponse
 */
export type V0CustomersCustomerIdKycLinkResponse = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdKycLinkResponse"> & {
    /**
     * KYC link data
     *
     * @generated from field: google.protobuf.Struct kyc_link = 1;
     */
    kycLink?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdKycLinkResponse.
 * Use `create(V0CustomersCustomerIdKycLinkResponseSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdKycLinkResponseSchema: GenMessage<V0CustomersCustomerIdKycLinkResponse>;
/**
 * V0CustomersCustomerIdTosAcceptanceLinkRequest for getting TOS link
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdTosAcceptanceLinkRequest
 */
export type V0CustomersCustomerIdTosAcceptanceLinkRequest = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdTosAcceptanceLinkRequest"> & {
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 1;
     */
    customerId: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdTosAcceptanceLinkRequest.
 * Use `create(V0CustomersCustomerIdTosAcceptanceLinkRequestSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdTosAcceptanceLinkRequestSchema: GenMessage<V0CustomersCustomerIdTosAcceptanceLinkRequest>;
/**
 * V0CustomersCustomerIdTosAcceptanceLinkResponse returns TOS link
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdTosAcceptanceLinkResponse
 */
export type V0CustomersCustomerIdTosAcceptanceLinkResponse = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdTosAcceptanceLinkResponse"> & {
    /**
     * TOS acceptance link data
     *
     * @generated from field: google.protobuf.Struct tos_link = 1;
     */
    tosLink?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdTosAcceptanceLinkResponse.
 * Use `create(V0CustomersCustomerIdTosAcceptanceLinkResponseSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdTosAcceptanceLinkResponseSchema: GenMessage<V0CustomersCustomerIdTosAcceptanceLinkResponse>;
/**
 * V0CustomersCustomerIdIdVerificationLinkRequest for getting ID verification link
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdIdVerificationLinkRequest
 */
export type V0CustomersCustomerIdIdVerificationLinkRequest = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdIdVerificationLinkRequest"> & {
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 1;
     */
    customerId: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdIdVerificationLinkRequest.
 * Use `create(V0CustomersCustomerIdIdVerificationLinkRequestSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdIdVerificationLinkRequestSchema: GenMessage<V0CustomersCustomerIdIdVerificationLinkRequest>;
/**
 * V0CustomersCustomerIdIdVerificationLinkResponse returns ID verification link
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdIdVerificationLinkResponse
 */
export type V0CustomersCustomerIdIdVerificationLinkResponse = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdIdVerificationLinkResponse"> & {
    /**
     * ID verification link data
     *
     * @generated from field: google.protobuf.Struct id_link = 1;
     */
    idLink?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdIdVerificationLinkResponse.
 * Use `create(V0CustomersCustomerIdIdVerificationLinkResponseSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdIdVerificationLinkResponseSchema: GenMessage<V0CustomersCustomerIdIdVerificationLinkResponse>;
/**
 * V0CustomersCustomerIdTransfersRequest for getting customer transfers
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdTransfersRequest
 */
export type V0CustomersCustomerIdTransfersRequest = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdTransfersRequest"> & {
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 1;
     */
    customerId: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdTransfersRequest.
 * Use `create(V0CustomersCustomerIdTransfersRequestSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdTransfersRequestSchema: GenMessage<V0CustomersCustomerIdTransfersRequest>;
/**
 * V0CustomersCustomerIdTransfersResponse returns customer transfers
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdTransfersResponse
 */
export type V0CustomersCustomerIdTransfersResponse = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdTransfersResponse"> & {
    /**
     * Transfers data
     *
     * @generated from field: google.protobuf.Struct transfers = 1;
     */
    transfers?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdTransfersResponse.
 * Use `create(V0CustomersCustomerIdTransfersResponseSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdTransfersResponseSchema: GenMessage<V0CustomersCustomerIdTransfersResponse>;
/**
 * V0CustomersCustomerIdExternalAccountsRequest for listing external accounts
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsRequest
 */
export type V0CustomersCustomerIdExternalAccountsRequest = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsRequest"> & {
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 1;
     */
    customerId: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsRequest.
 * Use `create(V0CustomersCustomerIdExternalAccountsRequestSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdExternalAccountsRequestSchema: GenMessage<V0CustomersCustomerIdExternalAccountsRequest>;
/**
 * V0CustomersCustomerIdExternalAccountsResponse returns external accounts list
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsResponse
 */
export type V0CustomersCustomerIdExternalAccountsResponse = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsResponse"> & {
    /**
     * External accounts data
     *
     * @generated from field: google.protobuf.Struct external_accounts = 1;
     */
    externalAccounts?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsResponse.
 * Use `create(V0CustomersCustomerIdExternalAccountsResponseSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdExternalAccountsResponseSchema: GenMessage<V0CustomersCustomerIdExternalAccountsResponse>;
/**
 * V0CustomersCustomerIdExternalAccountsCreateRequest for creating external account
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsCreateRequest
 */
export type V0CustomersCustomerIdExternalAccountsCreateRequest = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsCreateRequest"> & {
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 1;
     */
    customerId: string;
    /**
     * Currency
     *
     * @generated from field: string currency = 2;
     */
    currency: string;
    /**
     * Bank name
     *
     * @generated from field: string bank_name = 3;
     */
    bankName: string;
    /**
     * Account owner name
     *
     * @generated from field: string account_owner_name = 4;
     */
    accountOwnerName: string;
    /**
     * Account type
     *
     * @generated from field: string account_type = 5;
     */
    accountType: string;
    /**
     * IBAN details (for EUR)
     *
     * @generated from field: gfxcafe.oku.account.v1.IbanDetails iban = 6;
     */
    iban?: IbanDetails;
    /**
     * Account details (for USD)
     *
     * @generated from field: gfxcafe.oku.account.v1.AccountDetails account = 7;
     */
    account?: AccountDetails;
    /**
     * Account owner type
     *
     * @generated from field: string account_owner_type = 8;
     */
    accountOwnerType: string;
    /**
     * First name (for individual)
     *
     * @generated from field: string first_name = 9;
     */
    firstName: string;
    /**
     * Last name (for individual)
     *
     * @generated from field: string last_name = 10;
     */
    lastName: string;
    /**
     * Business name (for business)
     *
     * @generated from field: string business_name = 11;
     */
    businessName: string;
    /**
     * Address (for USD)
     *
     * @generated from field: gfxcafe.oku.account.v1.AddressDetails address = 12;
     */
    address?: AddressDetails;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsCreateRequest.
 * Use `create(V0CustomersCustomerIdExternalAccountsCreateRequestSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdExternalAccountsCreateRequestSchema: GenMessage<V0CustomersCustomerIdExternalAccountsCreateRequest>;
/**
 * V0CustomersCustomerIdExternalAccountsCreateResponse returns external account details
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsCreateResponse
 */
export type V0CustomersCustomerIdExternalAccountsCreateResponse = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsCreateResponse"> & {
    /**
     * External account data
     *
     * @generated from field: google.protobuf.Struct external_account = 1;
     */
    externalAccount?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsCreateResponse.
 * Use `create(V0CustomersCustomerIdExternalAccountsCreateResponseSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdExternalAccountsCreateResponseSchema: GenMessage<V0CustomersCustomerIdExternalAccountsCreateResponse>;
/**
 * V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateRequest for updating external account
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateRequest
 */
export type V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateRequest = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateRequest"> & {
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 1;
     */
    customerId: string;
    /**
     * External account ID
     *
     * @generated from field: string external_account_id = 2;
     */
    externalAccountId: string;
    /**
     * Address
     *
     * @generated from field: gfxcafe.oku.account.v1.AddressDetails address = 3;
     */
    address?: AddressDetails;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateRequest.
 * Use `create(V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateRequestSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateRequestSchema: GenMessage<V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateRequest>;
/**
 * V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateResponse returns updated account
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateResponse
 */
export type V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateResponse = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateResponse"> & {
    /**
     * External account data
     *
     * @generated from field: google.protobuf.Struct external_account = 1;
     */
    externalAccount?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateResponse.
 * Use `create(V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateResponseSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateResponseSchema: GenMessage<V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateResponse>;
/**
 * V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteRequest for deleting external account
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteRequest
 */
export type V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteRequest = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteRequest"> & {
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 1;
     */
    customerId: string;
    /**
     * External account ID
     *
     * @generated from field: string external_account_id = 2;
     */
    externalAccountId: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteRequest.
 * Use `create(V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteRequestSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteRequestSchema: GenMessage<V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteRequest>;
/**
 * V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteResponse returns deletion status
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteResponse
 */
export type V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteResponse = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteResponse"> & {
    /**
     * Deletion status
     *
     * @generated from field: google.protobuf.Struct status = 1;
     */
    status?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteResponse.
 * Use `create(V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteResponseSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteResponseSchema: GenMessage<V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteResponse>;
/**
 * V0CustomersCustomerIdPlaidLinkRequestsRequest for Plaid link creation
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdPlaidLinkRequestsRequest
 */
export type V0CustomersCustomerIdPlaidLinkRequestsRequest = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdPlaidLinkRequestsRequest"> & {
    /**
     * Customer ID
     *
     * @generated from field: string customer_id = 1;
     */
    customerId: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdPlaidLinkRequestsRequest.
 * Use `create(V0CustomersCustomerIdPlaidLinkRequestsRequestSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdPlaidLinkRequestsRequestSchema: GenMessage<V0CustomersCustomerIdPlaidLinkRequestsRequest>;
/**
 * V0CustomersCustomerIdPlaidLinkRequestsResponse returns Plaid link details
 *
 * @generated from message gfxcafe.oku.account.v1.V0CustomersCustomerIdPlaidLinkRequestsResponse
 */
export type V0CustomersCustomerIdPlaidLinkRequestsResponse = Message<"gfxcafe.oku.account.v1.V0CustomersCustomerIdPlaidLinkRequestsResponse"> & {
    /**
     * Plaid link data
     *
     * @generated from field: google.protobuf.Struct plaid_link = 1;
     */
    plaidLink?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0CustomersCustomerIdPlaidLinkRequestsResponse.
 * Use `create(V0CustomersCustomerIdPlaidLinkRequestsResponseSchema)` to create a new message.
 */
export declare const V0CustomersCustomerIdPlaidLinkRequestsResponseSchema: GenMessage<V0CustomersCustomerIdPlaidLinkRequestsResponse>;
/**
 * V0PlaidExchangePublicTokenLinkTokenRequest for token exchange
 *
 * @generated from message gfxcafe.oku.account.v1.V0PlaidExchangePublicTokenLinkTokenRequest
 */
export type V0PlaidExchangePublicTokenLinkTokenRequest = Message<"gfxcafe.oku.account.v1.V0PlaidExchangePublicTokenLinkTokenRequest"> & {
    /**
     * Link token
     *
     * @generated from field: string link_token = 1;
     */
    linkToken: string;
    /**
     * Public token
     *
     * @generated from field: string public_token = 2;
     */
    publicToken: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0PlaidExchangePublicTokenLinkTokenRequest.
 * Use `create(V0PlaidExchangePublicTokenLinkTokenRequestSchema)` to create a new message.
 */
export declare const V0PlaidExchangePublicTokenLinkTokenRequestSchema: GenMessage<V0PlaidExchangePublicTokenLinkTokenRequest>;
/**
 * V0PlaidExchangePublicTokenLinkTokenResponse returns exchange result
 *
 * @generated from message gfxcafe.oku.account.v1.V0PlaidExchangePublicTokenLinkTokenResponse
 */
export type V0PlaidExchangePublicTokenLinkTokenResponse = Message<"gfxcafe.oku.account.v1.V0PlaidExchangePublicTokenLinkTokenResponse"> & {
    /**
     * Exchange result data
     *
     * @generated from field: google.protobuf.Struct result = 1;
     */
    result?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0PlaidExchangePublicTokenLinkTokenResponse.
 * Use `create(V0PlaidExchangePublicTokenLinkTokenResponseSchema)` to create a new message.
 */
export declare const V0PlaidExchangePublicTokenLinkTokenResponseSchema: GenMessage<V0PlaidExchangePublicTokenLinkTokenResponse>;
/**
 * V0TransfersRequest for creating a transfer
 *
 * @generated from message gfxcafe.oku.account.v1.V0TransfersRequest
 */
export type V0TransfersRequest = Message<"gfxcafe.oku.account.v1.V0TransfersRequest"> & {
    /**
     * Amount
     *
     * @generated from field: string amount = 1;
     */
    amount: string;
    /**
     * On behalf of (customer ID)
     *
     * @generated from field: string on_behalf_of = 2;
     */
    onBehalfOf: string;
    /**
     * Developer fee
     *
     * @generated from field: string developer_fee = 3;
     */
    developerFee: string;
    /**
     * Source details
     *
     * @generated from field: gfxcafe.oku.account.v1.TransferSource source = 4;
     */
    source?: TransferSource;
    /**
     * Destination details
     *
     * @generated from field: gfxcafe.oku.account.v1.TransferDestination destination = 5;
     */
    destination?: TransferDestination;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0TransfersRequest.
 * Use `create(V0TransfersRequestSchema)` to create a new message.
 */
export declare const V0TransfersRequestSchema: GenMessage<V0TransfersRequest>;
/**
 * V0TransfersResponse returns transfer details
 *
 * @generated from message gfxcafe.oku.account.v1.V0TransfersResponse
 */
export type V0TransfersResponse = Message<"gfxcafe.oku.account.v1.V0TransfersResponse"> & {
    /**
     * Transfer data
     *
     * @generated from field: google.protobuf.Struct transfer = 1;
     */
    transfer?: JsonObject;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0TransfersResponse.
 * Use `create(V0TransfersResponseSchema)` to create a new message.
 */
export declare const V0TransfersResponseSchema: GenMessage<V0TransfersResponse>;
/**
 * V0TransfersTransferIdRequest for canceling a transfer
 *
 * @generated from message gfxcafe.oku.account.v1.V0TransfersTransferIdRequest
 */
export type V0TransfersTransferIdRequest = Message<"gfxcafe.oku.account.v1.V0TransfersTransferIdRequest"> & {
    /**
     * Transfer ID
     *
     * @generated from field: string transfer_id = 1;
     */
    transferId: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0TransfersTransferIdRequest.
 * Use `create(V0TransfersTransferIdRequestSchema)` to create a new message.
 */
export declare const V0TransfersTransferIdRequestSchema: GenMessage<V0TransfersTransferIdRequest>;
/**
 * V0TransfersTransferIdResponse returns cancellation details
 *
 * @generated from message gfxcafe.oku.account.v1.V0TransfersTransferIdResponse
 */
export type V0TransfersTransferIdResponse = Message<"gfxcafe.oku.account.v1.V0TransfersTransferIdResponse"> & {
    /**
     * Transfer ID
     *
     * @generated from field: string transfer_id = 1;
     */
    transferId: string;
    /**
     * Status
     *
     * @generated from field: string status = 2;
     */
    status: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.V0TransfersTransferIdResponse.
 * Use `create(V0TransfersTransferIdResponseSchema)` to create a new message.
 */
export declare const V0TransfersTransferIdResponseSchema: GenMessage<V0TransfersTransferIdResponse>;
/**
 * TransferSource details
 *
 * @generated from message gfxcafe.oku.account.v1.TransferSource
 */
export type TransferSource = Message<"gfxcafe.oku.account.v1.TransferSource"> & {
    /**
     * Currency
     *
     * @generated from field: string currency = 1;
     */
    currency: string;
    /**
     * Payment rail
     *
     * @generated from field: string payment_rail = 2;
     */
    paymentRail: string;
    /**
     * External account ID (for ach/wire)
     *
     * @generated from field: string external_account_id = 3;
     */
    externalAccountId: string;
    /**
     * From address (for crypto)
     *
     * @generated from field: gfxcafe.oku.account.v1.Address from_address = 4;
     */
    fromAddress?: Address;
};
/**
 * Describes the message gfxcafe.oku.account.v1.TransferSource.
 * Use `create(TransferSourceSchema)` to create a new message.
 */
export declare const TransferSourceSchema: GenMessage<TransferSource>;
/**
 * TransferDestination details
 *
 * @generated from message gfxcafe.oku.account.v1.TransferDestination
 */
export type TransferDestination = Message<"gfxcafe.oku.account.v1.TransferDestination"> & {
    /**
     * Currency
     *
     * @generated from field: string currency = 1;
     */
    currency: string;
    /**
     * Payment rail
     *
     * @generated from field: string payment_rail = 2;
     */
    paymentRail: string;
    /**
     * External account ID (for ach/wire)
     *
     * @generated from field: string external_account_id = 3;
     */
    externalAccountId: string;
    /**
     * To address (for crypto)
     *
     * @generated from field: gfxcafe.oku.account.v1.Address to_address = 4;
     */
    toAddress?: Address;
    /**
     * Wire message
     *
     * @generated from field: string wire_message = 5;
     */
    wireMessage: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.TransferDestination.
 * Use `create(TransferDestinationSchema)` to create a new message.
 */
export declare const TransferDestinationSchema: GenMessage<TransferDestination>;
/**
 * IbanDetails for EUR accounts
 *
 * @generated from message gfxcafe.oku.account.v1.IbanDetails
 */
export type IbanDetails = Message<"gfxcafe.oku.account.v1.IbanDetails"> & {
    /**
     * Account number
     *
     * @generated from field: string account_number = 1;
     */
    accountNumber: string;
    /**
     * BIC
     *
     * @generated from field: string bic = 2;
     */
    bic: string;
    /**
     * Country
     *
     * @generated from field: string country = 3;
     */
    country: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.IbanDetails.
 * Use `create(IbanDetailsSchema)` to create a new message.
 */
export declare const IbanDetailsSchema: GenMessage<IbanDetails>;
/**
 * AccountDetails for USD accounts
 *
 * @generated from message gfxcafe.oku.account.v1.AccountDetails
 */
export type AccountDetails = Message<"gfxcafe.oku.account.v1.AccountDetails"> & {
    /**
     * Account number
     *
     * @generated from field: string account_number = 1;
     */
    accountNumber: string;
    /**
     * Routing number
     *
     * @generated from field: string routing_number = 2;
     */
    routingNumber: string;
    /**
     * Checking or savings
     *
     * @generated from field: string checking_or_savings = 3;
     */
    checkingOrSavings: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.AccountDetails.
 * Use `create(AccountDetailsSchema)` to create a new message.
 */
export declare const AccountDetailsSchema: GenMessage<AccountDetails>;
/**
 * AddressDetails for accounts
 *
 * @generated from message gfxcafe.oku.account.v1.AddressDetails
 */
export type AddressDetails = Message<"gfxcafe.oku.account.v1.AddressDetails"> & {
    /**
     * Street line 1
     *
     * @generated from field: string street_line_1 = 1;
     */
    streetLine1: string;
    /**
     * Street line 2
     *
     * @generated from field: string street_line_2 = 2;
     */
    streetLine2: string;
    /**
     * City
     *
     * @generated from field: string city = 3;
     */
    city: string;
    /**
     * State
     *
     * @generated from field: string state = 4;
     */
    state: string;
    /**
     * Postal code
     *
     * @generated from field: string postal_code = 5;
     */
    postalCode: string;
    /**
     * Country
     *
     * @generated from field: string country = 6;
     */
    country: string;
};
/**
 * Describes the message gfxcafe.oku.account.v1.AddressDetails.
 * Use `create(AddressDetailsSchema)` to create a new message.
 */
export declare const AddressDetailsSchema: GenMessage<AddressDetails>;
/**
 * BridgeService provides bridge functionality for fiat-crypto transfers
 *
 * V0 endpoints (/bridge/v0/*)
 *
 * @generated from service gfxcafe.oku.account.v1.BridgeService
 */
export declare const BridgeService: GenService<{
    /**
     * Get exchange rates (public) (/bridge/v0/exchange_rates)
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0ExchangeRates
     */
    v0ExchangeRates: {
        methodKind: "unary";
        input: typeof V0ExchangeRatesRequestSchema;
        output: typeof V0ExchangeRatesResponseSchema;
    };
    /**
     * Health check (/bridge/v0/health) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0Health
     */
    v0Health: {
        methodKind: "unary";
        input: typeof V0HealthRequestSchema;
        output: typeof V0HealthResponseSchema;
    };
    /**
     * Get countries list (/bridge/v0/lists/countries) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0ListsCountries
     */
    v0ListsCountries: {
        methodKind: "unary";
        input: typeof V0ListsCountriesRequestSchema;
        output: typeof V0ListsCountriesResponseSchema;
    };
    /**
     * List KYC links (/bridge/v0/kyc_links) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0KycLinks
     */
    v0KycLinks: {
        methodKind: "unary";
        input: typeof V0KycLinksRequestSchema;
        output: typeof V0KycLinksResponseSchema;
    };
    /**
     * Get KYC link by ID (/bridge/v0/kyc_links/{kyc_link_id}) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0KycLinksKycLinkId
     */
    v0KycLinksKycLinkId: {
        methodKind: "unary";
        input: typeof V0KycLinksKycLinkIdRequestSchema;
        output: typeof V0KycLinksKycLinkIdResponseSchema;
    };
    /**
     * Create KYC link (/bridge/v0/kyc_links) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0KycLinksCreate
     */
    v0KycLinksCreate: {
        methodKind: "unary";
        input: typeof V0KycLinksCreateRequestSchema;
        output: typeof V0KycLinksCreateResponseSchema;
    };
    /**
     * List customers (/bridge/v0/customers) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0Customers
     */
    v0Customers: {
        methodKind: "unary";
        input: typeof V0CustomersRequestSchema;
        output: typeof V0CustomersResponseSchema;
    };
    /**
     * Get customer by ID (/bridge/v0/customers/{customer_id}) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0CustomersCustomerId
     */
    v0CustomersCustomerId: {
        methodKind: "unary";
        input: typeof V0CustomersCustomerIdRequestSchema;
        output: typeof V0CustomersCustomerIdResponseSchema;
    };
    /**
     * Get customer KYC link (/bridge/v0/customers/{customer_id}/kyc_link) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0CustomersCustomerIdKycLink
     */
    v0CustomersCustomerIdKycLink: {
        methodKind: "unary";
        input: typeof V0CustomersCustomerIdKycLinkRequestSchema;
        output: typeof V0CustomersCustomerIdKycLinkResponseSchema;
    };
    /**
     * Get customer TOS acceptance link (/bridge/v0/customers/{customer_id}/tos_acceptance_link) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0CustomersCustomerIdTosAcceptanceLink
     */
    v0CustomersCustomerIdTosAcceptanceLink: {
        methodKind: "unary";
        input: typeof V0CustomersCustomerIdTosAcceptanceLinkRequestSchema;
        output: typeof V0CustomersCustomerIdTosAcceptanceLinkResponseSchema;
    };
    /**
     * Get customer ID verification link (/bridge/v0/customers/{customer_id}/id_verification_link) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0CustomersCustomerIdIdVerificationLink
     */
    v0CustomersCustomerIdIdVerificationLink: {
        methodKind: "unary";
        input: typeof V0CustomersCustomerIdIdVerificationLinkRequestSchema;
        output: typeof V0CustomersCustomerIdIdVerificationLinkResponseSchema;
    };
    /**
     * Get customer transfers (/bridge/v0/customers/{customer_id}/transfers) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0CustomersCustomerIdTransfers
     */
    v0CustomersCustomerIdTransfers: {
        methodKind: "unary";
        input: typeof V0CustomersCustomerIdTransfersRequestSchema;
        output: typeof V0CustomersCustomerIdTransfersResponseSchema;
    };
    /**
     * List external accounts (/bridge/v0/customers/{customer_id}/external_accounts) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0CustomersCustomerIdExternalAccounts
     */
    v0CustomersCustomerIdExternalAccounts: {
        methodKind: "unary";
        input: typeof V0CustomersCustomerIdExternalAccountsRequestSchema;
        output: typeof V0CustomersCustomerIdExternalAccountsResponseSchema;
    };
    /**
     * Create external account (/bridge/v0/customers/{customer_id}/external_accounts) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0CustomersCustomerIdExternalAccountsCreate
     */
    v0CustomersCustomerIdExternalAccountsCreate: {
        methodKind: "unary";
        input: typeof V0CustomersCustomerIdExternalAccountsCreateRequestSchema;
        output: typeof V0CustomersCustomerIdExternalAccountsCreateResponseSchema;
    };
    /**
     * Update external account (/bridge/v0/customers/{customer_id}/external_accounts/{external_account_id}) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdate
     */
    v0CustomersCustomerIdExternalAccountsExternalAccountIdUpdate: {
        methodKind: "unary";
        input: typeof V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateRequestSchema;
        output: typeof V0CustomersCustomerIdExternalAccountsExternalAccountIdUpdateResponseSchema;
    };
    /**
     * Delete external account (/bridge/v0/customers/{customer_id}/external_accounts/{external_account_id}) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0CustomersCustomerIdExternalAccountsExternalAccountIdDelete
     */
    v0CustomersCustomerIdExternalAccountsExternalAccountIdDelete: {
        methodKind: "unary";
        input: typeof V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteRequestSchema;
        output: typeof V0CustomersCustomerIdExternalAccountsExternalAccountIdDeleteResponseSchema;
    };
    /**
     * Create Plaid link request (/bridge/v0/customers/{customer_id}/plaid_link_requests) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0CustomersCustomerIdPlaidLinkRequests
     */
    v0CustomersCustomerIdPlaidLinkRequests: {
        methodKind: "unary";
        input: typeof V0CustomersCustomerIdPlaidLinkRequestsRequestSchema;
        output: typeof V0CustomersCustomerIdPlaidLinkRequestsResponseSchema;
    };
    /**
     * Exchange Plaid public token (/bridge/v0/plaid_exchange_public_token/{link_token}) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0PlaidExchangePublicTokenLinkToken
     */
    v0PlaidExchangePublicTokenLinkToken: {
        methodKind: "unary";
        input: typeof V0PlaidExchangePublicTokenLinkTokenRequestSchema;
        output: typeof V0PlaidExchangePublicTokenLinkTokenResponseSchema;
    };
    /**
     * Create transfer (/bridge/v0/transfers) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0Transfers
     */
    v0Transfers: {
        methodKind: "unary";
        input: typeof V0TransfersRequestSchema;
        output: typeof V0TransfersResponseSchema;
    };
    /**
     * Cancel transfer (/bridge/v0/transfers/{transfer_id}) - requires auth
     *
     * @generated from rpc gfxcafe.oku.account.v1.BridgeService.V0TransfersTransferId
     */
    v0TransfersTransferId: {
        methodKind: "unary";
        input: typeof V0TransfersTransferIdRequestSchema;
        output: typeof V0TransfersTransferIdResponseSchema;
    };
}>;
