import type { IDAgent } from './agent/index.js'; import type { ProtocolsConfigure } from '@dwn-protocol/id'; /** * The protocol configure message carries the protocol definition and is used * to setup the protocol. * * @beta */ export type ProtocolsConfigureMessage = ProtocolsConfigure['message']; /** * Metadata of the protocol * * @beta */ type ProtocolMetadata = { author: string; messageCid?: string; }; /** * The Protocol API abstraction class. It's used to represent and retrieve a protocol and * also to install (send) protocols to other DIDs. * * @beta */ export declare class Protocol { private _agent; private _metadata; private _protocolsConfigureMessage; /** * The protocol definition: types, structure and publish status */ get definition(): import("@dwn-protocol/id").ProtocolDefinition; constructor(agent: IDAgent, protocolsConfigureMessage: ProtocolsConfigureMessage, metadata: ProtocolMetadata); /** * Returns the protocol as a JSON object. */ toJSON(): import("@dwn-protocol/id").ProtocolsConfigureMessage; /** * Sends the protocol to a remote DWN by specifying their DID * @param target - the DID to send the protocol to * @returns the status of the send protocols request */ send(target: string): Promise<{ status: { code: number; detail: string; }; }>; } export {}; //# sourceMappingURL=protocol.d.ts.map