/**
 * API
 * Audius V1 API
 *
 * The version of the OpenAPI document: 1.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import type { ArtistCoinFees } from './ArtistCoinFees';
import type { ArtistLocker } from './ArtistLocker';
import type { DynamicBondingCurveInsights } from './DynamicBondingCurveInsights';
import type { RewardPool } from './RewardPool';
/**
 * A coin object
 * @export
 * @interface Coin
 */
export interface Coin {
    /**
     * The mint address of the coin
     * @type {string}
     * @memberof Coin
     */
    mint: string;
    /**
     * The coin symbol/ticker
     * @type {string}
     * @memberof Coin
     */
    ticker: string;
    /**
     * The number of decimals for the coin
     * @type {number}
     * @memberof Coin
     */
    decimals: number;
    /**
     * The coin name
     * @type {string}
     * @memberof Coin
     */
    name: string;
    /**
     * The URI for the coin's logo image
     * @type {string}
     * @memberof Coin
     */
    logoUri?: string;
    /**
     * The URI for the coin's banner image
     * @type {string}
     * @memberof Coin
     */
    bannerImageUrl?: string;
    /**
     * The description of the coin
     * @type {string}
     * @memberof Coin
     */
    description?: string;
    /**
     * X (Twitter) handle for the coin
     * @type {string}
     * @memberof Coin
     */
    xHandle?: string;
    /**
     * Instagram handle for the coin
     * @type {string}
     * @memberof Coin
     */
    instagramHandle?: string;
    /**
     * TikTok handle for the coin
     * @type {string}
     * @memberof Coin
     */
    tiktokHandle?: string;
    /**
     * Website URL for the coin
     * @type {string}
     * @memberof Coin
     */
    website?: string;
    /**
     * Generic link URL for the coin
     * @type {string}
     * @memberof Coin
     */
    link1?: string;
    /**
     * Generic link URL for the coin
     * @type {string}
     * @memberof Coin
     */
    link2?: string;
    /**
     * Generic link URL for the coin
     * @type {string}
     * @memberof Coin
     */
    link3?: string;
    /**
     * Generic link URL for the coin
     * @type {string}
     * @memberof Coin
     */
    link4?: string;
    /**
     * Whether the coin has a Discord server
     * @type {boolean}
     * @memberof Coin
     */
    hasDiscord?: boolean;
    /**
     * The date and time when the coin was created
     * @type {Date}
     * @memberof Coin
     */
    createdAt: Date;
    /**
     * The date and time when the coin was last updated
     * @type {Date}
     * @memberof Coin
     */
    updatedAt?: Date;
    /**
     * The user ID of the coin owner
     * @type {string}
     * @memberof Coin
     */
    ownerId?: string;
    /**
     * The escrow recipient address for custom-created coins without DBCs
     * @type {string}
     * @memberof Coin
     */
    escrowRecipient?: string;
    /**
     *
     * @type {DynamicBondingCurveInsights}
     * @memberof Coin
     */
    dynamicBondingCurve?: DynamicBondingCurveInsights;
    /**
     *
     * @type {ArtistLocker}
     * @memberof Coin
     */
    artistLocker?: ArtistLocker;
    /**
     *
     * @type {ArtistCoinFees}
     * @memberof Coin
     */
    artistFees?: ArtistCoinFees;
    /**
     *
     * @type {RewardPool}
     * @memberof Coin
     */
    rewardPool?: RewardPool;
    /**
     * Current price in USD
     * @type {number}
     * @memberof Coin
     */
    price?: number;
    /**
     * Market capitalization in USD
     * @type {number}
     * @memberof Coin
     */
    marketCap?: number;
    /**
     * Total volume traded in USD (all time)
     * @type {number}
     * @memberof Coin
     */
    totalVolumeUSD?: number;
    /**
     * Number of holders
     * @type {number}
     * @memberof Coin
     */
    holder?: number;
    /**
     * Total supply of the token
     * @type {number}
     * @memberof Coin
     */
    totalSupply?: number;
    /**
     * Current liquidity in USD
     * @type {number}
     * @memberof Coin
     */
    liquidity?: number;
    /**
     * Circulating supply of the token
     * @type {number}
     * @memberof Coin
     */
    circulatingSupply?: number;
    /**
     * 24h price change in percent
     * @type {number}
     * @memberof Coin
     */
    priceChange24hPercent?: number;
    /**
     * Display price (client-computed, e.g. for display formatting)
     * @type {number}
     * @memberof Coin
     */
    displayPrice?: number;
    /**
     * Display market cap (client-computed)
     * @type {number}
     * @memberof Coin
     */
    displayMarketCap?: number;
}
/**
 * Check if a given object implements the Coin interface.
 */
export declare function instanceOfCoin(value: object): value is Coin;
export declare function CoinFromJSON(json: any): Coin;
export declare function CoinFromJSONTyped(json: any, ignoreDiscriminator: boolean): Coin;
export declare function CoinToJSON(value?: Coin | null): any;
