export interface RugCheckTokenInfo {
    mintAuthority: string | null;
    supply: number;
    decimals: number;
    isInitialized: boolean;
    freezeAuthority: string | null;
}
export interface RugCheckTokenMeta {
    name: string;
    symbol: string;
    uri: string;
    mutable: boolean;
    updateAuthority: string;
}
export interface RugCheckTopHolder {
    address: string;
    amount: number;
    decimals: number;
    pct: number;
    uiAmount: number;
    uiAmountString: string;
    owner: string;
    insider: boolean;
}
export interface RugCheckRisk {
    name: string;
    value: string;
    description: string;
    score: number;
    level: string;
}
export interface RugCheckFileMeta {
    description: string;
    name: string;
    symbol: string;
    image: string;
}
export interface RugCheckTokenAccount {
    mint: string;
    owner: string;
    amount: number;
    delegate: string | null;
    state: number;
    delegatedAmount: number;
    closeAuthority: string | null;
}
export interface RugCheckMintAccount {
    mintAuthority: string | null;
    supply: number;
    decimals: number;
    isInitialized: boolean;
    freezeAuthority: string | null;
}
export interface RugCheckLp {
    baseMint: string;
    quoteMint: string;
    lpMint: string;
    quotePrice: number;
    basePrice: number;
    base: number;
    quote: number;
    reserveSupply: number;
    currentSupply: number;
    quoteUSD: number;
    baseUSD: number;
    pctReserve: number;
    pctSupply: number;
    holders: any | null;
    totalTokensUnlocked: number;
    tokenSupply: number;
    lpLocked: number;
    lpUnlocked: number;
    lpLockedPct: number;
    lpLockedUSD: number;
    lpMaxSupply: number;
    lpCurrentSupply: number;
    lpTotalSupply: number;
}
export interface RugCheckMarket {
    pubkey: string;
    marketType: string;
    mintA: string;
    mintB: string;
    mintLP: string;
    liquidityA: string;
    liquidityB: string;
    mintAAccount: RugCheckMintAccount;
    mintBAccount: RugCheckMintAccount;
    mintLPAccount: RugCheckMintAccount;
    liquidityAAccount: RugCheckTokenAccount;
    liquidityBAccount: RugCheckTokenAccount;
    lp: RugCheckLp;
}
export interface RugCheckTransferFee {
    pct: number;
    maxAmount: number;
    authority: string;
}
export interface RugCheckKnownAccount {
    name: string;
    type: string;
}
export interface RugCheckEvent {
    event: number;
    oldValue: string;
    newValue: string;
    createdAt: string;
}
export interface RugCheckLink {
    provider: string;
    value: string;
}
export interface RugCheckVerification {
    mint: string;
    payer: string;
    name: string;
    symbol: string;
    description: string;
    jup_verified: boolean;
    jup_strict: boolean;
    links: RugCheckLink[];
}
export interface RugCheckInsiderNetwork {
    id: string;
    size: number;
    type: string;
    tokenAmount: number;
    activeAccounts: number;
}
export interface RugCheckTokenReport {
    mint: string;
    tokenProgram: string;
    creator: string;
    token: RugCheckTokenInfo;
    token_extensions: any | null;
    tokenMeta: RugCheckTokenMeta;
    topHolders: RugCheckTopHolder[];
    freezeAuthority: string | null;
    mintAuthority: string | null;
    risks: RugCheckRisk[];
    score: number;
    score_normalised: number;
    fileMeta: RugCheckFileMeta;
    lockerOwners: Record<string, any>;
    lockers: Record<string, any>;
    markets: RugCheckMarket[];
    totalMarketLiquidity: number;
    totalLPProviders: number;
    totalHolders: number;
    price: number;
    rugged: boolean;
    tokenType: string;
    transferFee: RugCheckTransferFee;
    knownAccounts: Record<string, RugCheckKnownAccount>;
    events: RugCheckEvent[];
    verification: RugCheckVerification;
    graphInsidersDetected: number;
    insiderNetworks: RugCheckInsiderNetwork[];
    detectedAt: string;
    creatorTokens: any | null;
}
