export declare class ContractType {
    name: string;
    abi: string;
    constructor(name: string, abi: string);
    static of(name: string, abi: string): ContractType;
}
export declare abstract class ContractTypes {
    static readonly WETH: ContractType;
    static readonly POOL: ContractType;
    static readonly TOKEN: ContractType;
    static readonly ERC4626: ContractType;
    static readonly POOL_MASTER: ContractType;
    static readonly CLASSIC_FACTORY: ContractType;
    static readonly POOL_FACTORY: ContractType;
    static readonly STABLE_FACTORY: ContractType;
    static readonly CRYPTO_FACTORY: ContractType;
    static readonly NFT_POSITION_MANAGER: ContractType;
    static readonly QUOTER: ContractType;
    static readonly ROUTER_V3: ContractType;
    static readonly ROUTER_V2: ContractType;
    static readonly MULTICALL: ContractType;
    static readonly MULTICALL2: ContractType;
    static readonly MULTICALL3: ContractType;
    static readonly WRAPPER_ROUTER: ContractType;
    static readonly WRAPPER_ROUTER_V3: ContractType;
    static readonly ROUTE_HELPER: ContractType;
    static readonly TOKEN_HELPER: ContractType;
    static readonly POOL_HELPER: ContractType;
}
//# sourceMappingURL=contractTypes.d.ts.map