/// <reference types="node" />
import { MessageType } from '../MessageType';
import { IDlcMessage } from './DlcMessage';
export declare abstract class OrderIrcInfo {
    static deserialize(buf: Buffer): OrderIrcInfo;
    abstract type: number;
    abstract toJSON(): IOrderIrcInfoJSON;
    abstract serialize(): Buffer;
}
/**
 * OrderMetadata message contains information about a node and indicates its
 * desire to enter into a new contract. This is the first step toward
 * order negotiation.
 */
export declare class OrderIrcInfoV0 extends OrderIrcInfo implements IDlcMessage {
    static type: MessageType;
    /**
     * Deserializes an offer_dlc_v0 message
     * @param buf
     */
    static deserialize(buf: Buffer): OrderIrcInfoV0;
    /**
     * The type for order_metadata_v0 message. order_metadata_v0 = 62774
     */
    type: MessageType;
    length: bigint;
    nick: string;
    pubKey: Buffer;
    /**
     * Converts order_metadata_v0 to JSON
     */
    toJSON(): IOrderIrcInfoJSON;
    /**
     * Serializes the oracle_event message into a Buffer
     */
    serialize(): Buffer;
}
export interface IOrderIrcInfoJSON {
    type: number;
    nick: string;
    pubKey: string;
}
