/**
 * 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 { CoinArtistFees } from './CoinArtistFees';
import type { CoinDynamicBondingCurve } from './CoinDynamicBondingCurve';
import type { CoinExtensions } from './CoinExtensions';
/**
 *
 * @export
 * @interface Coin
 */
export interface Coin {
    /**
     * The coin name
     * @type {string}
     * @memberof Coin
     */
    name: string;
    /**
     * The coin symbol
     * @type {string}
     * @memberof Coin
     */
    ticker?: string;
    /**
     * The coin mint address
     * @type {string}
     * @memberof Coin
     */
    mint: string;
    /**
     * The number of decimals for the coin
     * @type {number}
     * @memberof Coin
     */
    decimals: number;
    /**
     * The ID of the user associated with the coin
     * @type {string}
     * @memberof Coin
     */
    ownerId: string;
    /**
     * URL to the coin's logo image
     * @type {string}
     * @memberof Coin
     */
    logoUri?: string;
    /**
     * A longform description about the coin
     * @type {string}
     * @memberof Coin
     */
    description?: string;
    /**
     * The official website 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 added to Audius.
     * @type {string}
     * @memberof Coin
     */
    createdAt: string;
    /**
     * The SPL token mint address
     * @type {string}
     * @memberof Coin
     */
    address?: string;
    /**
     * The token symbol
     * @type {string}
     * @memberof Coin
     */
    symbol?: string;
    /**
     * Market capitalization in USD
     * @type {number}
     * @memberof Coin
     */
    marketCap: number;
    /**
     * Fully diluted valuation in USD
     * @type {number}
     * @memberof Coin
     */
    fdv: number;
    /**
     *
     * @type {CoinExtensions}
     * @memberof Coin
     */
    extensions?: CoinExtensions;
    /**
     * Current liquidity in USD
     * @type {number}
     * @memberof Coin
     */
    liquidity: number;
    /**
     * Unix timestamp of the last trade
     * @type {number}
     * @memberof Coin
     */
    lastTradeUnixTime: number;
    /**
     * ISO8601 time of the last trade
     * @type {string}
     * @memberof Coin
     */
    lastTradeHumanTime: string;
    /**
     * Current price in USD
     * @type {number}
     * @memberof Coin
     */
    price: number;
    /**
     * Price 24 hours ago in USD
     * @type {number}
     * @memberof Coin
     */
    history24hPrice: number;
    /**
     * 24h price change in percent
     * @type {number}
     * @memberof Coin
     */
    priceChange24hPercent: number;
    /**
     * Unique wallets traded in last 24h
     * @type {number}
     * @memberof Coin
     */
    uniqueWallet24h: number;
    /**
     * Unique wallets traded in previous 24h
     * @type {number}
     * @memberof Coin
     */
    uniqueWalletHistory24h: number;
    /**
     * 24h change in unique wallets (percent)
     * @type {number}
     * @memberof Coin
     */
    uniqueWallet24hChangePercent: number;
    /**
     * Total supply of the token
     * @type {number}
     * @memberof Coin
     */
    totalSupply: number;
    /**
     * Circulating supply of the token
     * @type {number}
     * @memberof Coin
     */
    circulatingSupply: number;
    /**
     * Number of holders
     * @type {number}
     * @memberof Coin
     */
    holder: number;
    /**
     * Number of trades in last 24h
     * @type {number}
     * @memberof Coin
     */
    trade24h: number;
    /**
     * Number of trades in previous 24h
     * @type {number}
     * @memberof Coin
     */
    tradeHistory24h: number;
    /**
     * 24h change in trade count (percent)
     * @type {number}
     * @memberof Coin
     */
    trade24hChangePercent: number;
    /**
     * Number of sell trades in last 24h
     * @type {number}
     * @memberof Coin
     */
    sell24h: number;
    /**
     * Number of sell trades in previous 24h
     * @type {number}
     * @memberof Coin
     */
    sellHistory24h: number;
    /**
     * 24h change in sell trades (percent)
     * @type {number}
     * @memberof Coin
     */
    sell24hChangePercent: number;
    /**
     * Number of buy trades in last 24h
     * @type {number}
     * @memberof Coin
     */
    buy24h: number;
    /**
     * Number of buy trades in previous 24h
     * @type {number}
     * @memberof Coin
     */
    buyHistory24h: number;
    /**
     * 24h change in buy trades (percent)
     * @type {number}
     * @memberof Coin
     */
    buy24hChangePercent: number;
    /**
     * 24h trading volume (token units)
     * @type {number}
     * @memberof Coin
     */
    v24h: number;
    /**
     * 24h trading volume in USD
     * @type {number}
     * @memberof Coin
     */
    v24hUSD: number;
    /**
     * Previous 24h trading volume (token units)
     * @type {number}
     * @memberof Coin
     */
    vHistory24h: number;
    /**
     * Previous 24h trading volume in USD
     * @type {number}
     * @memberof Coin
     */
    vHistory24hUSD?: number;
    /**
     * 24h change in volume (percent)
     * @type {number}
     * @memberof Coin
     */
    v24hChangePercent?: number;
    /**
     * 24h buy volume (token units)
     * @type {number}
     * @memberof Coin
     */
    vBuy24h?: number;
    /**
     * 24h buy volume in USD
     * @type {number}
     * @memberof Coin
     */
    vBuy24hUSD?: number;
    /**
     * Previous 24h buy volume (token units)
     * @type {number}
     * @memberof Coin
     */
    vBuyHistory24h?: number;
    /**
     * Previous 24h buy volume in USD
     * @type {number}
     * @memberof Coin
     */
    vBuyHistory24hUSD?: number;
    /**
     * 24h change in buy volume (percent)
     * @type {number}
     * @memberof Coin
     */
    vBuy24hChangePercent?: number;
    /**
     * 24h sell volume (token units)
     * @type {number}
     * @memberof Coin
     */
    vSell24h?: number;
    /**
     * 24h sell volume in USD
     * @type {number}
     * @memberof Coin
     */
    vSell24hUSD?: number;
    /**
     * Previous 24h sell volume (token units)
     * @type {number}
     * @memberof Coin
     */
    vSellHistory24h?: number;
    /**
     * Previous 24h sell volume in USD
     * @type {number}
     * @memberof Coin
     */
    vSellHistory24hUSD?: number;
    /**
     * 24h change in sell volume (percent)
     * @type {number}
     * @memberof Coin
     */
    vSell24hChangePercent?: number;
    /**
     * Number of markets the token is traded on
     * @type {number}
     * @memberof Coin
     */
    numberMarkets?: number;
    /**
     * Total volume of coin traded (all time)
     * @type {number}
     * @memberof Coin
     */
    totalVolume: number;
    /**
     * Total volume of coin traded in USD (all time)
     * @type {number}
     * @memberof Coin
     */
    totalVolumeUSD: number;
    /**
     * Total volume bought (all time)
     * @type {number}
     * @memberof Coin
     */
    volumeBuy: number;
    /**
     * Total volume bought in USD (all time)
     * @type {number}
     * @memberof Coin
     */
    volumeBuyUSD: number;
    /**
     * Total volume sold (all time)
     * @type {number}
     * @memberof Coin
     */
    volumeSell: number;
    /**
     * Total volume sold in USD (all time)
     * @type {number}
     * @memberof Coin
     */
    volumeSellUSD: number;
    /**
     * Total number of trades (all time)
     * @type {number}
     * @memberof Coin
     */
    totalTrade: number;
    /**
     * Total number of buys (all time)
     * @type {number}
     * @memberof Coin
     */
    buy: number;
    /**
     * Total number of sells (all time)
     * @type {number}
     * @memberof Coin
     */
    sell: number;
    /**
     *
     * @type {CoinDynamicBondingCurve}
     * @memberof Coin
     */
    dynamicBondingCurve: CoinDynamicBondingCurve;
    /**
     *
     * @type {CoinArtistFees}
     * @memberof Coin
     */
    artistFees?: CoinArtistFees;
}
/**
 * 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;
