import { DepositWithdrawConfig, ZipperAssetChainVariant, ZipperAssetConfig, ZipperChainConfig, ZipperChainContractConfig } from "../shared/catalog-config.js"; //#region src/catalogs/zipper-catalog.d.ts /** Known stable contract names plus a string escape hatch for new contracts. */ type ZipperContractName = "fundingAccount" | "guardRegistry" | "tradingGateway" | (string & {}); type ZipperEnrichedAssetChain = ZipperChainConfig & { zippedAssetId: ZipperAssetChainVariant["zippedAssetId"]; isNativeAsset: ZipperAssetChainVariant["isNativeAsset"]; networkFee?: ZipperAssetChainVariant["networkFee"]; networkFeeTsSec?: ZipperAssetChainVariant["networkFeeTsSec"]; depositMinAmount?: ZipperAssetChainVariant["depositMinAmount"]; withdrawMinAmount?: ZipperAssetChainVariant["withdrawMinAmount"]; supply?: ZipperAssetChainVariant["supply"]; sourceToken: ZipperAssetChainVariant["sourceToken"]; zToken: ZipperAssetChainVariant["zToken"]; }; type ZipperEnrichedAssetConfig = Omit & { chains: ZipperEnrichedAssetChain[]; }; interface ZipperCatalogData { readonly chains: readonly ZipperChainConfig[]; readonly assets: readonly ZipperEnrichedAssetConfig[]; readonly contracts: readonly ZipperChainContractConfig[]; readonly tsMs?: number; } type ZipperCatalogSeed = DepositWithdrawConfig | { readonly chains: readonly ZipperChainConfig[]; readonly assets: readonly (ZipperAssetConfig | ZipperEnrichedAssetConfig)[]; readonly contracts?: readonly ZipperChainContractConfig[]; readonly tsMs?: number; }; //#endregion export { type DepositWithdrawConfig, type ZipperAssetConfig, ZipperCatalogData, ZipperCatalogSeed, type ZipperChainConfig, type ZipperChainContractConfig, ZipperContractName, ZipperEnrichedAssetChain, ZipperEnrichedAssetConfig }; //# sourceMappingURL=zipper-catalog.d.ts.map