raiden-ts
Version:
Raiden Light Client Typescript/Javascript SDK
704 lines (703 loc) • 20.8 kB
TypeScript
import * as t from 'io-ts';
import { WithdrawConfirmation, WithdrawRequest } from '../messages';
import type { ActionType } from '../utils/actions';
import { Address, UInt } from '../utils/types';
export declare const newBlock: ((payload: {
blockNumber: number;
}) => {
readonly type: "block/new";
readonly payload: {
blockNumber: number;
};
}) & {
type: "block/new";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "block/new";
readonly payload: {
blockNumber: number;
};
};
error: undefined;
};
export interface newBlock extends ActionType<typeof newBlock> {
}
export declare const blockTime: ((payload: {
blockTime: number;
}) => {
readonly type: "block/time";
readonly payload: {
blockTime: number;
};
}) & {
type: "block/time";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "block/time";
readonly payload: {
blockTime: number;
};
};
error: undefined;
};
export interface blockTime extends ActionType<typeof blockTime> {
}
export declare const blockStale: ((payload: {
stale: boolean;
}) => {
readonly type: "block/stale";
readonly payload: {
stale: boolean;
};
}) & {
type: "block/stale";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "block/stale";
readonly payload: {
stale: boolean;
};
};
error: undefined;
};
export interface blockStale extends ActionType<typeof blockStale> {
}
export declare const contractSettleTimeout: ((payload: number) => {
readonly type: "contract/settleTimeout";
readonly payload: number;
}) & {
type: "contract/settleTimeout";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "contract/settleTimeout";
readonly payload: number;
};
error: undefined;
};
export interface contractSettleTimeout extends ActionType<typeof contractSettleTimeout> {
}
/**
* A new token network is detected in the TokenNetworkRegistry instance
* fromBlock is only set on the first time, to fetch and handle past events
*/
export declare const tokenMonitored: ((payload: {
token: Address;
tokenNetwork: Address;
} & {
fromBlock?: number | undefined;
toBlock?: number | undefined;
}) => {
readonly type: "token/monitored";
readonly payload: {
token: Address;
tokenNetwork: Address;
} & {
fromBlock?: number | undefined;
toBlock?: number | undefined;
};
}) & {
type: "token/monitored";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "token/monitored";
readonly payload: {
token: Address;
tokenNetwork: Address;
} & {
fromBlock?: number | undefined;
toBlock?: number | undefined;
};
};
error: undefined;
};
export interface tokenMonitored extends ActionType<typeof tokenMonitored> {
}
/**
* Channel actions receive ChannelId as 'meta' action property
* This way, 'meta' can be used equally for request, success and error actions
*/
export declare const channelOpen: {
readonly request: ((payload: {
deposit?: UInt<32> | undefined;
}, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/open/request";
readonly payload: {
deposit?: UInt<32> | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/open/request";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/open/request";
readonly payload: {
deposit?: UInt<32> | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
readonly success: ((payload: {
id: number;
token: Address;
isFirstParticipant: boolean;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
}, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/open/success";
readonly payload: {
id: number;
token: Address;
isFirstParticipant: boolean;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/open/success";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/open/success";
readonly payload: {
id: number;
token: Address;
isFirstParticipant: boolean;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
readonly failure: ((payload: unknown, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/open/failure";
readonly payload: unknown;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
readonly error: true;
}) & {
type: "channel/open/failure";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/open/failure";
readonly payload: unknown;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
readonly error: true;
};
error: true;
};
};
export declare namespace channelOpen {
interface request extends ActionType<typeof channelOpen.request> {
}
interface success extends ActionType<typeof channelOpen.success> {
}
interface failure extends ActionType<typeof channelOpen.failure> {
}
}
export declare const channelMonitored: ((payload: {
id: number;
}, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/monitored";
readonly payload: {
id: number;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/monitored";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/monitored";
readonly payload: {
id: number;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
export interface channelMonitored extends ActionType<typeof channelMonitored> {
}
export declare const channelDeposit: {
readonly request: ((payload: ({
deposit: UInt<32>;
} | {
totalDeposit: UInt<32>;
}) & {
waitOpen?: true | undefined;
}, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/deposit/request";
readonly payload: ({
deposit: UInt<32>;
} | {
totalDeposit: UInt<32>;
}) & {
waitOpen?: true | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/deposit/request";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/deposit/request";
readonly payload: ({
deposit: UInt<32>;
} | {
totalDeposit: UInt<32>;
}) & {
waitOpen?: true | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
readonly success: ((payload: {
id: number;
participant: Address;
totalDeposit: UInt<32>;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
}, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/deposit/success";
readonly payload: {
id: number;
participant: Address;
totalDeposit: UInt<32>;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/deposit/success";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/deposit/success";
readonly payload: {
id: number;
participant: Address;
totalDeposit: UInt<32>;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
readonly failure: ((payload: unknown, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/deposit/failure";
readonly payload: unknown;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
readonly error: true;
}) & {
type: "channel/deposit/failure";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/deposit/failure";
readonly payload: unknown;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
readonly error: true;
};
error: true;
};
};
export declare namespace channelDeposit {
interface request extends ActionType<typeof channelDeposit.request> {
}
interface success extends ActionType<typeof channelDeposit.success> {
}
interface failure extends ActionType<typeof channelDeposit.failure> {
}
}
export declare const channelWithdrawn: ((payload: {
id: number;
participant: Address;
totalWithdraw: UInt<32>;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
}, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/withdraw/success";
readonly payload: {
id: number;
participant: Address;
totalWithdraw: UInt<32>;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/withdraw/success";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/withdraw/success";
readonly payload: {
id: number;
participant: Address;
totalWithdraw: UInt<32>;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
export interface channelWithdrawn extends ActionType<typeof channelWithdrawn> {
}
export declare const channelClose: {
readonly request: ((payload: undefined, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/close/request";
readonly payload: undefined;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/close/request";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/close/request";
readonly payload: undefined;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
readonly success: ((payload: {
id: number;
participant: Address;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
}, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/close/success";
readonly payload: {
id: number;
participant: Address;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/close/success";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/close/success";
readonly payload: {
id: number;
participant: Address;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
readonly failure: ((payload: unknown, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/close/failure";
readonly payload: unknown;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
readonly error: true;
}) & {
type: "channel/close/failure";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/close/failure";
readonly payload: unknown;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
readonly error: true;
};
error: true;
};
};
export declare namespace channelClose {
interface request extends ActionType<typeof channelClose.request> {
}
interface success extends ActionType<typeof channelClose.success> {
}
interface failure extends ActionType<typeof channelClose.failure> {
}
}
export declare const channelSettleable: ((payload: {
settleableBlock: number;
}, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/settleable";
readonly payload: {
settleableBlock: number;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/settleable";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/settleable";
readonly payload: {
settleableBlock: number;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
export interface channelSettleable extends ActionType<typeof channelSettleable> {
}
export declare const channelSettle: {
readonly request: ((payload: {
coopSettle: [[WithdrawRequest & Readonly<{
signature: import("../utils/types").HexString<65>;
}>, WithdrawConfirmation & Readonly<{
signature: import("../utils/types").HexString<65>;
}>], [WithdrawRequest & Readonly<{
signature: import("../utils/types").HexString<65>;
}>, WithdrawConfirmation & Readonly<{
signature: import("../utils/types").HexString<65>;
}>]];
} | undefined, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/settle/request";
readonly payload: {
coopSettle: [[WithdrawRequest & Readonly<{
signature: import("../utils/types").HexString<65>;
}>, WithdrawConfirmation & Readonly<{
signature: import("../utils/types").HexString<65>;
}>], [WithdrawRequest & Readonly<{
signature: import("../utils/types").HexString<65>;
}>, WithdrawConfirmation & Readonly<{
signature: import("../utils/types").HexString<65>;
}>]];
} | undefined;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/settle/request";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/settle/request";
readonly payload: {
coopSettle: [[WithdrawRequest & Readonly<{
signature: import("../utils/types").HexString<65>;
}>, WithdrawConfirmation & Readonly<{
signature: import("../utils/types").HexString<65>;
}>], [WithdrawRequest & Readonly<{
signature: import("../utils/types").HexString<65>;
}>, WithdrawConfirmation & Readonly<{
signature: import("../utils/types").HexString<65>;
}>]];
} | undefined;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
readonly success: ((payload: {
id: number;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
} & {
locks?: readonly ({
amount: UInt<32>;
expiration: UInt<32>;
secrethash: import("../utils/types").HexString<32>;
} & {
registered?: true | undefined;
})[] | undefined;
}, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/settle/success";
readonly payload: {
id: number;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
} & {
locks?: readonly ({
amount: UInt<32>;
expiration: UInt<32>;
secrethash: import("../utils/types").HexString<32>;
} & {
registered?: true | undefined;
})[] | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
}) & {
type: "channel/settle/success";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/settle/success";
readonly payload: {
id: number;
txHash: import("../utils/types").HexString<32>;
txBlock: number;
confirmed: boolean | undefined;
} & {
locks?: readonly ({
amount: UInt<32>;
expiration: UInt<32>;
secrethash: import("../utils/types").HexString<32>;
} & {
registered?: true | undefined;
})[] | undefined;
};
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
};
error: undefined;
};
readonly failure: ((payload: unknown, meta: {
tokenNetwork: Address;
partner: Address;
}) => {
readonly type: "channel/settle/failure";
readonly payload: unknown;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
readonly error: true;
}) & {
type: "channel/settle/failure";
codec: t.Mixed;
is: (a: unknown) => a is {
readonly type: "channel/settle/failure";
readonly payload: unknown;
readonly meta: {
tokenNetwork: Address;
partner: Address;
};
readonly error: true;
};
error: true;
};
};
export declare namespace channelSettle {
interface request extends ActionType<typeof channelSettle.request> {
}
interface success extends ActionType<typeof channelSettle.success> {
}
interface failure extends ActionType<typeof channelSettle.failure> {
}
}