Documentation
    Preparing search index...

    Interface PredictConfig

    Everything a tx builder or read needs to address a Predict deployment on one network.

    interface PredictConfig {
        coinTypes: { deep: string; plp: string };
        network: "mainnet" | "testnet" | "custom";
        objects: {
            accountRegistry: string;
            oracleRegistry: string;
            poolVault: string;
            protocolConfig: string;
            registry: string;
        };
        packages: PredictPackages;
        quoteCoinType: string;
        underlyings: Record<string, UnderlyingConfig>;
        units: {
            fixedPointScale: number;
            positionLotSize: number;
            positionQuantityDecimals: number;
            quoteCoinDecimals: number;
        };
    }
    Index
    coinTypes: { deep: string; plp: string }

    Coin types the deployment owns. plp is NOT derivable from packages.predict: a Move type tag keeps the ORIGINAL package id across an upgrade, while packages.predict moves to the latest.

    network: "mainnet" | "testnet" | "custom"
    objects: {
        accountRegistry: string;
        oracleRegistry: string;
        poolVault: string;
        protocolConfig: string;
        registry: string;
    }
    packages: PredictPackages
    quoteCoinType: string

    The deployment's settlement coin type. Always read this rather than assuming a type: the contracts renamed the collateral to usdc::usdc::USDC, but a deployment published before that rename still serves its original coin type, and this field is what the deployment record actually carries.

    underlyings: Record<string, UnderlyingConfig>
    units: {
        fixedPointScale: number;
        positionLotSize: number;
        positionQuantityDecimals: number;
        quoteCoinDecimals: number;
    }

    Scale constants the deploy owns rather than the SDK.