import { Serializable } from '../../../internal/interfaces/serializable';
export declare class GetDepositAddressV2Data implements Serializable {
    /**
     * Deposit address
     */
    address?: string;
    /**
     * Address remark. If there’s no remark, it is empty. When you withdraw from other platforms to KuCoin, you need to fill in memo(tag). Be careful: If you do not fill in memo(tag), your deposit may not be available.
     */
    memo?: string;
    /**
     * The chainName of currency
     */
    chain?: string;
    /**
     * The chainId of currency
     */
    chainId?: string;
    /**
     * Deposit account type: main (funding account), trade (spot trading account)
     */
    to?: GetDepositAddressV2Data.ToEnum;
    /**
     * currency
     */
    currency?: string;
    /**
     * The token contract address.
     */
    contractAddress?: string;
    /**
     * Private constructor, please use the corresponding static methods to construct the object.
     */
    private constructor();
    /**
     * Convert the object to a JSON string.
     */
    toJson(): string;
    /**
     * Create an object from a JSON string.
     */
    static fromJson(input: string): GetDepositAddressV2Data;
    /**
     * Create an object from Js Object.
     */
    static fromObject(jsonObject: Object): GetDepositAddressV2Data;
}
export declare namespace GetDepositAddressV2Data {
    enum ToEnum {
        /**
         *
         */
        MAIN,
        /**
         *
         */
        TRADE
    }
}
