@libp2p/interface
Version:
The interface implemented by a libp2p node
33 lines • 914 B
TypeScript
import type { PublicKey } from './keys.js';
import type { Uint8ArrayList } from 'uint8arraylist';
/**
* Record is the base implementation of a record that can be used as the payload of a libp2p envelope.
*/
export interface Record {
/**
* signature domain.
*/
domain: string;
/**
* identifier of the type of record
*/
codec: Uint8Array;
/**
* Marshal a record to be used in an envelope.
*/
marshal(): Uint8Array;
/**
* Verifies if the other provided Record is identical to this one.
*/
equals(other: Record): boolean;
}
export interface Envelope {
publicKey: PublicKey;
payloadType: Uint8Array | Uint8ArrayList;
payload: Uint8Array;
signature: Uint8Array | Uint8ArrayList;
marshal(): Uint8Array;
validate(domain: string): Promise<boolean>;
equals(other: Envelope): boolean;
}
//# sourceMappingURL=record.d.ts.map