import { PtonV2_1 } from './contracts/pTON/v2_1/PtonV2_1.js'; import { RouterV2_1, PoolV2_1 } from './contracts/dex/v2_1/index.js'; import { PtonV1 } from './contracts/pTON/v1/PtonV1.js'; import { LpAccountV1 } from './contracts/dex/v1/LpAccountV1.js'; import { PoolV1 } from './contracts/dex/v1/PoolV1.js'; import { RouterV1 } from './contracts/dex/v1/RouterV1.js'; import { RouterInfo } from '@ston-fi/api'; import { DEX_TYPE } from './contracts/dex/constants.js'; import { LpAccountV2_1 } from './contracts/dex/v2_1/LpAccount/LpAccountV2_1.js'; import { CPIPoolV2_1 } from './contracts/dex/v2_1/pool/CPIPoolV2_1.js'; import { StablePoolV2_1 } from './contracts/dex/v2_1/pool/StablePoolV2_1.js'; import { WCPIPoolV2_1 } from './contracts/dex/v2_1/pool/WCPIPoolV2_1.js'; import { WStablePoolV2_1 } from './contracts/dex/v2_1/pool/WStablePoolV2_1.js'; import { VaultV2_1 } from './contracts/dex/v2_1/vault/VaultV2_1.js'; import { CPIRouterV2_1 } from './contracts/dex/v2_1/router/CPIRouterV2_1.js'; import { StableRouterV2_1 } from './contracts/dex/v2_1/router/StableRouterV2_1.js'; import { WCPIRouterV2_1 } from './contracts/dex/v2_1/router/WCPIRouterV2_1.js'; import { WStableRouterV2_1 } from './contracts/dex/v2_1/router/WStableRouterV2_1.js'; import '@ton/ton'; import './types.js'; import './contracts/pTON/AbstractPton.js'; import './contracts/pTON/constants.js'; import './contracts/dex/v2_1/pool/BasePoolV2_1.js'; import './contracts/core/Contract.js'; import './contracts/core/JettonMinter.js'; import './contracts/core/JettonWallet.js'; import './contracts/dex/v2_1/router/BaseRouterV2_1.js'; /** * Returns a set of DEX contracts for the given version and type of the router. * Useful for defining the set of contracts based on the API information about the router. * Throws if the version or type is not supported. * * @param {number} routerInfo.majorVersion - The major version of the router. * @param {number} routerInfo.minorVersion - The minor version of the router. * @param {string | undefined} routerInfo.routerType - The type of router. * * @returns The set of contracts for the given version. */ declare function dexFactory(routerInfo: Pick & { routerType?: RouterInfo["routerType"] | DEX_TYPE; }): { readonly Router: typeof RouterV1; readonly Pool: typeof PoolV1; readonly LpAccount: typeof LpAccountV1; readonly pTON: typeof PtonV1; } | { readonly Router: typeof RouterV2_1; readonly Pool: typeof PoolV2_1; readonly LpAccount: typeof LpAccountV2_1; readonly Vault: typeof VaultV2_1; readonly pTON: typeof PtonV2_1; } | { Router: typeof CPIRouterV2_1; Pool: typeof CPIPoolV2_1; _Router: typeof RouterV2_1; _Pool: typeof PoolV2_1; LpAccount: typeof LpAccountV2_1; Vault: typeof VaultV2_1; pTON: typeof PtonV2_1; } | { Router: typeof StableRouterV2_1; Pool: typeof StablePoolV2_1; _Router: typeof RouterV2_1; _Pool: typeof PoolV2_1; LpAccount: typeof LpAccountV2_1; Vault: typeof VaultV2_1; pTON: typeof PtonV2_1; } | { Router: typeof WCPIRouterV2_1; Pool: typeof WCPIPoolV2_1; _Router: typeof RouterV2_1; _Pool: typeof PoolV2_1; LpAccount: typeof LpAccountV2_1; Vault: typeof VaultV2_1; pTON: typeof PtonV2_1; } | { Router: typeof WStableRouterV2_1; Pool: typeof WStablePoolV2_1; _Router: typeof RouterV2_1; _Pool: typeof PoolV2_1; LpAccount: typeof LpAccountV2_1; Vault: typeof VaultV2_1; pTON: typeof PtonV2_1; }; /** * Returns an instance of the router contract for the given version, address and type. * Useful for creating a router based on the API information about the router. * Throws if the version or type is not supported. * * @param {Address | string} routerInfo.address - The address of the router. * @param {number} routerInfo.majorVersion - The major version of the router. * @param {number} routerInfo.minorVersion - The minorVersion version of the router. * @param {string | undefined} routerInfo.routerType - The type of router. * * @returns {Router} The instance of the router contract. */ declare function routerFactory(routerInfo: Pick & { routerType?: RouterInfo["routerType"] | DEX_TYPE; }): RouterV1 | RouterV2_1 | CPIRouterV2_1 | StableRouterV2_1 | WCPIRouterV2_1 | WStableRouterV2_1; export { dexFactory, routerFactory };