import { EoAccount } from "../models/TAccount"; import { Web3Client } from '../clients/Web3Client'; import { TAddress } from '../models/TAddress'; import { GnosisSafeHandler } from './GnosisSafeHandler'; import { config } from '../config/Config'; import { TEth } from '../models/TEth'; import { TAbiItem } from '../types/TAbi'; export declare const PREDETERMINED_SALT_NONCE = "0xb1073742015cbcf5a3a4d9d1ae33ecf619439710b89475f92e2abd2117e90f90"; export declare abstract class GnosisSafeFactory { static create(owner: EoAccount, client: Web3Client, params: { owners: TAddress[]; threshold?: number; saltNonce?: bigint | TEth.Hex; contracts?: typeof config.safe.contracts; }): Promise; } export interface ContractNetworkConfig { /** multiSendAddress - Address of the MultiSend contract deployed on a specific network */ multiSendAddress: string; /** multiSendAbi - Abi of the MultiSend contract deployed on a specific network */ multiSendAbi?: TAbiItem | TAbiItem[]; /** safeMasterCopyAddress - Address of the Gnosis Safe Master Copy contract deployed on a specific network */ safeMasterCopyAddress: string; /** safeMasterCopyAbi - Abi of the Gnosis Safe Master Copy contract deployed on a specific network */ safeMasterCopyAbi?: TAbiItem | TAbiItem[]; /** safeProxyFactoryAddress - Address of the Gnosis Safe Proxy Factory contract deployed on a specific network */ safeProxyFactoryAddress: string; /** safeProxyFactoryAbi - Abi of the Gnosis Safe Proxy Factory contract deployed on a specific network */ safeProxyFactoryAbi?: TAbiItem | TAbiItem[]; } export interface ContractNetworksConfig { /** id - Network id */ [id: string]: ContractNetworkConfig; }