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
TypeScript
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;