UNPKG

@airgap/etherlink

Version:

The @airgap/etherlink package is an implementation of the ICoinProtocol interface from @airgap/coinlib-core.

20 lines (19 loc) 1.17 kB
import { AirGapOfflineProtocol, AirGapOnlineProtocol } from '../../../protocol/protocol'; import { Module } from '../../module'; interface AirGapSerializedBaseProtocol<T extends string> { type: T; identifier: string; } export interface AirGapSerializedOfflineProtocol extends AirGapSerializedBaseProtocol<'offline'> { } export interface AirGapSerializedOnlineProtocol extends AirGapSerializedBaseProtocol<'online'> { } export declare type AirGapSerializedAnyProtocol = AirGapSerializedOfflineProtocol | AirGapSerializedOnlineProtocol; export declare type ProtocolSerializerExtension<_T extends Module> = ProtocolSerializerModule; export interface ProtocolSerializerModule { serializeOfflineProtocol(protocol: AirGapOfflineProtocol): Promise<AirGapSerializedOfflineProtocol | undefined>; deserializeOfflineProtocol(serialized: AirGapSerializedOfflineProtocol): Promise<AirGapOfflineProtocol | undefined>; serializeOnlineProtocol(protocol: AirGapOnlineProtocol): Promise<AirGapSerializedOnlineProtocol | undefined>; deserializeOnlineProtocol(serialized: AirGapSerializedOnlineProtocol): Promise<AirGapOnlineProtocol | undefined>; } export {};