client-aftermath-ts-sdk
Version:
Client Aftermath TypeScript SDK
185 lines • 4.49 kB
TypeScript
import { CoinDecimal } from "../../types";
import { ObjectId, SuiAddress } from "./generalTypes";
export type RpcEndpoint = string;
export interface ConfigAddresses {
faucet?: FaucetAddresses;
staking?: StakingAddresses;
pools?: PoolsAddresses;
daoFeePools?: DaoFeePoolsAddresses;
suiFrens?: SuiFrensAddresses;
nftAmm?: NftAmmAddresses;
router?: RouterAddresses;
referralVault?: ReferralVaultAddresses;
perpetuals?: PerpetualsAddresses;
oracle?: OracleAddresses;
farms?: FarmsAddresses;
dynamicGas?: DynamicGasAddresses;
scallop?: ScallopAddresses;
leveragedStaking?: LeveragedStakingAddresses;
dca?: DcaAddresses;
limitOrders?: LimitAddresses;
sharedCustody?: SharedCustodyAddresses;
nfts?: NftsAddresses;
}
export interface FaucetAddresses {
packages: {
faucet: SuiAddress;
suiFrensGenesisWrapper: SuiAddress;
};
objects: {
faucet: ObjectId;
faucetRegistry: ObjectId;
suiFrensMint: ObjectId;
};
}
export interface StakingAddresses {
packages: {
lsd: SuiAddress;
afsui: SuiAddress;
events: SuiAddress;
};
objects: {
stakedSuiVault: ObjectId;
stakedSuiVaultState: ObjectId;
safe: ObjectId;
treasury: ObjectId;
referralVault: ObjectId;
validatorConfigsTable: ObjectId;
aftermathValidator: ObjectId;
};
}
export interface LeveragedStakingAddresses {
packages: {
leveragedAfSui: SuiAddress;
leveragedAfSuiInitial: SuiAddress;
};
objects: {
leveragedAfSuiState: ObjectId;
afSuiSuiPoolId: ObjectId;
};
}
export interface PoolsAddresses {
packages: {
amm: SuiAddress;
ammInterface: SuiAddress;
events: SuiAddress;
eventsV2: SuiAddress;
};
objects: {
poolRegistry: ObjectId;
protocolFeeVault: ObjectId;
treasury: ObjectId;
insuranceFund: ObjectId;
lpCoinsTable: ObjectId;
};
other?: {
createLpCoinPackageCompilations: Record<CoinDecimal, string>;
};
}
export interface DaoFeePoolsAddresses {
packages: {
amm: SuiAddress;
};
objects: {
version: ObjectId;
};
}
export interface SuiFrensAddresses {
packages: {
suiFrens: SuiAddress;
suiFrensBullshark: SuiAddress;
accessories: SuiAddress;
suiFrensVault: SuiAddress;
suiFrensVaultCapyLabsExtension: SuiAddress;
};
objects: {
capyLabsApp: ObjectId;
suiFrensVault: ObjectId;
suiFrensVaultStateV1: ObjectId;
suiFrensVaultStateV1MetadataTable: ObjectId;
suiFrensVaultCapyLabsExtension: ObjectId;
};
}
export interface NftAmmAddresses {
packages: {
nftAmm: SuiAddress;
};
objects: {
protocolFeeVault: ObjectId;
treasury: ObjectId;
insuranceFund: ObjectId;
referralVault: ObjectId;
};
}
export interface RouterAddresses {
packages: {
utils: SuiAddress;
};
}
export interface ReferralVaultAddresses {
packages: {
referralVault: SuiAddress;
};
objects: {
referralVault: ObjectId;
};
}
export interface PerpetualsAddresses {
packages: {
perpetuals: SuiAddress;
events: SuiAddress;
};
objects: {
adminCapability: ObjectId;
registry: ObjectId;
};
}
export interface FarmsAddresses {
packages: {
vaults: SuiAddress;
vaultsInitial: SuiAddress;
};
}
export interface DynamicGasAddresses {
sponsorAddress: SuiAddress;
}
export interface OracleAddresses {
packages: {
events: SuiAddress;
oracleReader: SuiAddress;
};
}
export interface ScallopAddresses {
objects: {
version: ObjectId;
afSuiMarket: ObjectId;
coinDecimalsRegistry: ObjectId;
xOracle: ObjectId;
};
}
export interface DcaAddresses {
packages: {
dca: SuiAddress;
events: SuiAddress;
eventsV2: SuiAddress;
};
objects: {
readonly config: ObjectId;
};
}
export interface LimitAddresses {
packages: {
limitOrders: SuiAddress;
events: SuiAddress;
};
}
export interface SharedCustodyAddresses {
address: ObjectId;
publicKey: ObjectId;
}
export interface NftsAddresses {
packages: {
mystenTransferPolicy: SuiAddress;
};
}
//# sourceMappingURL=configTypes.d.ts.map