@node-dlc/messaging
Version:
DLC Messaging Protocol
67 lines (66 loc) • 2.13 kB
TypeScript
/// <reference types="node" />
import { MessageType } from '../MessageType';
import { IDlcMessage } from './DlcMessage';
import { IOrderNegotiationFieldsV0JSON, IOrderNegotiationFieldsV1JSON, OrderNegotiationFields } from './OrderNegotiationFields';
/**
* OrderAccept contains information about a node and indicates its
* acceptance of the new order offer. This is the second step towards
* order negotiation.
*/
export declare class OrderAccept implements IDlcMessage {
static type: MessageType;
/**
* Creates an OrderAccept from JSON data
* @param json JSON object representing an order accept
*/
static fromJSON(json: any): OrderAccept;
/**
* Deserializes an order_accept message
* @param buf
*/
static deserialize(buf: Buffer): OrderAccept;
/**
* The type for order_accept message. order_accept = 62772
*/
type: MessageType;
tempOrderId: Buffer;
negotiationFields?: OrderNegotiationFields;
/**
* Converts order_accept to JSON
*/
toJSON(): IOrderAcceptJSON;
/**
* Serializes the order_accept message into a Buffer
*/
serialize(): Buffer;
}
export interface IOrderAcceptJSON {
type: number;
tempOrderId: string;
negotiationFields?: // Now optional
IOrderNegotiationFieldsV0JSON | IOrderNegotiationFieldsV1JSON;
}
export declare class OrderAcceptContainer {
private accepts;
/**
* Adds an OrderAccept to the container.
* @param accept The OrderAccept to add.
*/
addAccept(accept: OrderAccept): void;
/**
* Returns all OrderAccepts in the container.
* @returns An array of OrderAccept instances.
*/
getAccepts(): OrderAccept[];
/**
* Serializes all OrderAccepts in the container to a Buffer.
* @returns A Buffer containing the serialized OrderAccepts.
*/
serialize(): Buffer;
/**
* Deserializes a Buffer into an OrderAcceptContainer with OrderAccepts.
* @param buf The Buffer to deserialize.
* @returns An OrderAcceptContainer instance.
*/
static deserialize(buf: Buffer): OrderAcceptContainer;
}