import { AnswerAck } from './AnswerAck'; import { Codec } from './Codec'; import { MessageDTO } from './MessageDTO'; import { ReceivedAck } from './ReceivedAck'; import { SendDataFunction } from './SendDataFunction'; /** * Data sender side of a message system */ export declare class Sender { private readonly codec; private readonly receivedAck; private readonly answerAck; private readonly sendData; private messageId; private latestMessageReceived; constructor(codec: Codec, receivedAck: ReceivedAck, answerAck: AnswerAck, sendData: SendDataFunction); /** * Creates ACK promises to get shared data with the current process * while the message is being processed * @returns - [ message-received (ACK Promise), message-answer (ACK Promise), id (to identify responses) ] */ private createAckInterfaces; /** * Send messages to another process and get back information (answer) * @param target - Type of the message * @param data - Args sahred to the other process * @returns - Answer Promise */ postMessage(target: string, data: unknown): Promise; }