dp-contract-proxy-kit
Version:
Enable batched transactions and contract account interactions using a unique deterministic Gnosis Safe.
53 lines (52 loc) • 1.81 kB
TypeScript
import { NormalizedNetworkConfigEntry } from '../config/networks';
import EthLibAdapter, { Contract } from '../ethLibAdapters/EthLibAdapter';
import { Address } from '../utils/basicTypes';
import ContractVersionUtils from './ContractVersionUtils';
export interface ContractManagerProps {
ethLibAdapter: EthLibAdapter;
network: NormalizedNetworkConfigEntry;
ownerAccount: Address | undefined;
saltNonce: string;
isSafeApp: boolean;
isConnectedToSafe: boolean;
}
declare class ContractManager {
#private;
static create(opts: ContractManagerProps): Promise<ContractManager>;
constructor(ethLibAdapter: EthLibAdapter, network: NormalizedNetworkConfigEntry);
init(opts: ContractManagerProps): Promise<void>;
private calculateVersionUtils;
private calculateProxyAddress;
get versionUtils(): ContractVersionUtils | undefined;
/**
* Returns the instance of the Safe contract in use.
*
* @returns The instance of the Safe contract in use
*/
get contract(): Contract | undefined;
/**
* Returns the instance of the Proxy Factory contract in use.
*
* @returns The instance of the Proxy Factory contract in use
*/
get proxyFactory(): Contract;
/**
* Returns the Master Copy contract address in use.
*
* @returns The Master Copy contract address in use
*/
get masterCopyAddress(): Address;
/**
* Returns the instance of the MultiSend contract in use.
*
* @returns The instance of the MultiSend contract in use
*/
get multiSend(): Contract;
/**
* Returns the FallbackHandler contract address in use.
*
* @returns The FallbackHandler contract address in use
*/
get fallbackHandlerAddress(): Address;
}
export default ContractManager;