@hypernetlabs/objects
Version:
Objects and types shared by the Hypernet Protocol
112 lines • 2.95 kB
TypeScript
export interface IConditionalTransferResolvedPayload {
aliceIdentifier: string;
bobIdentifier: string;
channelAddress: string;
transfer: IFullTransferState;
channelBalance: IBalance;
conditionType: string;
activeTransferIds?: string[];
}
export interface IConditionalTransferCreatedPayload {
aliceIdentifier: string;
bobIdentifier: string;
channelAddress: string;
transfer: IFullTransferState;
channelBalance: IBalance;
conditionType: string;
activeTransferIds?: string[];
}
export interface IWithdrawResponse {
channelAddress: string;
transferId: string;
transactionHash?: string;
}
export interface IWithdrawQuote {
channelAddress: string;
amount: string;
assetId: string;
fee: string;
expiry: string;
signature?: string;
}
export interface IBalance {
to: string[];
amount: string[];
}
export interface IChannelUpdate {
channelAddress: string;
fromIdentifier: string;
toIdentifier: string;
type: string;
nonce: number;
balance: IBalance;
assetId: string;
details: unknown;
aliceSignature?: string | null;
bobSignature?: string | null;
}
export interface INetworkContext {
channelFactoryAddress: string;
transferRegistryAddress: string;
chainId: number;
}
export interface IFullTransferState<TTransferState = unknown, TTransferResolver = unknown> {
balance: IBalance;
assetId: string;
channelAddress: string;
inDispute: boolean;
transferId: string;
transferDefinition: string;
transferTimeout: string;
initialStateHash: string;
initiator: string;
responder: string;
channelFactoryAddress: string;
chainId: number;
transferEncodings: string[];
transferState: TTransferState;
transferResolver?: TTransferResolver;
meta?: IFullTransferStateMetadata;
channelNonce: number;
initiatorIdentifier: string;
responderIdentifier: string;
}
export interface IFullTransferStateMetadata {
cancellationReason?: string;
createdAt: number;
[key: string]: unknown;
}
export interface IFullChannelState {
assetIds: string[];
balances: IBalance[];
channelAddress: string;
alice: string;
bob: string;
merkleRoot: string;
nonce: number;
processedDepositsA: string[];
processedDepositsB: string[];
timeout: string;
aliceIdentifier: string;
bobIdentifier: string;
latestUpdate: IChannelUpdate;
networkContext: INetworkContext;
defundNonces: string[];
inDispute: boolean;
}
export interface IRegisteredTransfer {
name: string;
stateEncoding: string;
resolverEncoding: string;
definition: string;
encodedCancel: string;
}
export interface IBasicTransferResponse {
channelAddress: string;
transferId: string;
routingId?: string;
}
export interface IBasicChannelResponse {
channelAddress: string;
}
//# sourceMappingURL=index.d.ts.map