import BigNumber from 'bignumber.js'; import Web3 = require('web3'); import { TemporalUnit } from '../eac'; import { ITransactionRequest } from './ITransactionRequest'; export default class TransactionRequest implements ITransactionRequest { private data; private instance; private web3; private util; constructor(address: string, web3: Web3); readonly address: string; /** * Window centric getters */ readonly claimWindowSize: BigNumber; readonly claimWindowStart: BigNumber; readonly claimWindowEnd: BigNumber; readonly freezePeriod: BigNumber; readonly freezePeriodStart: BigNumber; readonly freezePeriodEnd: BigNumber; readonly temporalUnit: TemporalUnit; readonly windowSize: BigNumber; readonly windowStart: BigNumber; readonly reservedWindowSize: BigNumber; readonly reservedWindowEnd: BigNumber; readonly executionWindowEnd: BigNumber; /** * Dynamic getters */ beforeClaimWindow(): Promise; inClaimWindow(): Promise; inFreezePeriod(): Promise; inExecutionWindow(): Promise; inReservedWindow(): Promise; afterExecutionWindow(): Promise; executedAt(): Promise; getBucket(): number; /** * Claim props/methods */ readonly claimedBy: string; readonly isClaimed: boolean; isClaimedBy(address: string): boolean; readonly requiredDeposit: BigNumber; claimPaymentModifier(): Promise; now(): Promise; /** * Meta */ readonly isCancelled: boolean; readonly wasCalled: boolean; readonly wasSuccessful: boolean; readonly owner: string; /** * TxData */ readonly toAddress: string; readonly callGas: BigNumber; readonly callValue: BigNumber; readonly gasPrice: BigNumber; readonly fee: BigNumber; readonly bounty: BigNumber; callData(): Promise; /** * Data management */ fillData(): Promise; refreshData(): Promise; /** * ABI convenience functions */ readonly claimData: string; readonly executeData: string; readonly cancelData: string; /** * Error handling */ private checkData; private getExecutedEvent; }