///
///
import * as Web3 from 'web3';
import { BigNumber } from 'bignumber.js';
import { TransactionResult } from 'truffle-contract';
import Signature from './Signature';
import { Unidirectional } from '@machinomy/contracts';
import ChannelId from './ChannelId';
declare type Raw = [string, // sender
string, // receiver
BigNumber, // value
BigNumber, // settlingPeriod
BigNumber];
export default class ChannelEthContract {
contract: Promise;
private web3;
private cache;
constructor(web3: Web3, ttl: number);
open(sender: string, receiver: string, price: BigNumber, settlementPeriod: number | BigNumber, channelId?: ChannelId | string): Promise;
claim(receiver: string, channelId: string, value: BigNumber, signature: Signature): Promise;
deposit(sender: string, channelId: string, value: BigNumber): Promise;
getState(channelId: string): Promise;
getSettlementPeriod(channelId: string): Promise;
startSettle(account: string, channelId: string): Promise;
finishSettle(account: string, channelId: string): Promise;
paymentDigest(channelId: string, value: BigNumber): Promise;
canClaim(channelId: string, payment: BigNumber, receiver: string, signature: Signature): Promise;
channelById(channelId: string): Promise;
}
export {};