import { Serializable } from '../../../internal/interfaces/serializable';
export declare class GetDepositAddressV3Data 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 chainId of currency
     */
    chainId: string;
    /**
     * Deposit account type: MAIN (funding account), TRADE (spot trading account)
     */
    to: GetDepositAddressV3Data.ToEnum;
    /**
     * Expiration time; Lightning network expiration time; this field is not applicable to non-Lightning networks
     */
    expirationDate: number;
    /**
     * currency
     */
    currency: string;
    /**
     * The token contract address.
     */
    contractAddress: string;
    /**
     * The chainName of currency
     */
    chainName: 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): GetDepositAddressV3Data;
    /**
     * Create an object from Js Object.
     */
    static fromObject(jsonObject: Object): GetDepositAddressV3Data;
}
export declare namespace GetDepositAddressV3Data {
    enum ToEnum {
        /**
         * Funding account
         */
        MAIN,
        /**
         * Spot account
         */
        TRADE
    }
}
