UNPKG

dp-contract-proxy-kit

Version:

Enable batched transactions and contract account interactions using a unique deterministic Gnosis Safe.

43 lines (42 loc) 1.39 kB
import ContractManager from '../contractManager'; import EthLibAdapter, { Contract } from '../ethLibAdapters/EthLibAdapter'; import { Address } from '../utils/basicTypes'; import { StandardTransaction, TransactionResult, SendOptions } from '../utils/transactions'; export declare enum TransactionManagerNames { CpkTxManager = "CpkTransactionManager", SafeTxRelayManager = "SafeTransactionRelayManager", RocksideTxRelayManager = "RocksideTransactionRelayManager" } export interface TransactionManagerConfig { name: string; url?: string; speed?: string; } export interface CPKContracts { safeContract: Contract; proxyFactory: Contract; masterCopyAddress: Address; fallbackHandlerAddress: Address; } export interface ExecTransactionProps { ownerAccount: Address; safeExecTxParams: StandardTransaction; transactions: StandardTransaction[]; contractManager: ContractManager; ethLibAdapter: EthLibAdapter; saltNonce: string; isDeployed: boolean; isConnectedToSafe: boolean; sendOptions: SendOptions; } interface TransactionManager { config: TransactionManagerConfig; /** * Executes a list of transactions. * * @param options * @returns The transaction response */ execTransactions(options: ExecTransactionProps): Promise<TransactionResult>; } export default TransactionManager;