import { Serializable } from '../../../internal/interfaces/serializable';
export declare class GetDepositAddressV2Req implements Serializable {
    /**
     * currency
     */
    currency?: string;
    /**
     * Chain ID of currency
     */
    chain?: string;
    /**
     * Private constructor, please use the corresponding static methods to construct the object.
     */
    private constructor();
    /**
     * Creates a new instance of the `GetDepositAddressV2Req` class.
     * The builder pattern allows step-by-step construction of a `GetDepositAddressV2Req` object.
     */
    static builder(): GetDepositAddressV2ReqBuilder;
    /**
     * Creates a new instance of the `GetDepositAddressV2Req` class with the given data.
     */
    static create(data: {
        /**
         * currency
         */
        currency?: string;
        /**
         * Chain ID of currency
         */
        chain?: string;
    }): GetDepositAddressV2Req;
    /**
     * Convert the object to a JSON string.
     */
    toJson(): string;
    /**
     * Create an object from a JSON string.
     */
    static fromJson(input: string): GetDepositAddressV2Req;
    /**
     * Create an object from Js Object.
     */
    static fromObject(jsonObject: Object): GetDepositAddressV2Req;
}
export declare class GetDepositAddressV2ReqBuilder {
    readonly obj: GetDepositAddressV2Req;
    constructor(obj: GetDepositAddressV2Req);
    /**
     * currency
     */
    setCurrency(value: string): GetDepositAddressV2ReqBuilder;
    /**
     * Chain ID of currency
     */
    setChain(value: string): GetDepositAddressV2ReqBuilder;
    /**
     * Get the final object.
     */
    build(): GetDepositAddressV2Req;
}
