import { Address, Cell, Contract, ContractProvider, Sender } from '@ton/core'; export declare type PoolFactoryContractConfig = { adminAddress: Address; routerAddress: Address; nftv3Content: Cell; nftv3itemContent: Cell; }; export declare function poolFactoryContractConfigToCell(config: PoolFactoryContractConfig): Cell; export declare class PoolFactoryContract implements Contract { readonly address: Address; readonly init?: { code: Cell; data: Cell; } | undefined; constructor(address: Address, init?: { code: Cell; data: Cell; } | undefined); static createFromConfig(config: PoolFactoryContractConfig, code: Cell, workchain?: number): PoolFactoryContract; sendDeploy(provider: ContractProvider, via: Sender, value: bigint): Promise; static deployPoolMessage(jetton0Minter: Address, jetton1Minter: Address, sqrtPriceX96: bigint, settings: bigint, jetton0Wallet: Address, jetton1Wallet: Address): Cell; static unpackDeployPoolMessage(body: Cell): { jetton0Minter: Address; jetton1Minter: Address; sqrtPriceX96: bigint; settings: bigint; jetton0Wallet: Address; jetton1Wallet: Address; }; sendDeployPool(provider: ContractProvider, sender: Sender, value: bigint, jetton0Minter: Address, jetton1Minter: Address, sqrtPriceX96: bigint, settings: bigint, jetton0Wallet: Address, jetton1Wallet: Address): Promise; sendNewData(provider: ContractProvider, via: Sender, value: bigint, routerAddress: Address, nftv3Content?: Cell, nftv3itemContent?: Cell): Promise; getPoolFactoryData(provider: ContractProvider): Promise<{ admin_address: Address; router_address: Address; nftv3_content: Cell; nftv3item_content: Cell; }>; }