You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-desktop/ts/session/messages/outgoing/controlMessage/receipt/ReadReceiptMessage.ts

29 lines
875 B
TypeScript

import { ContentMessage } from '../..';
import { SignalService } from '../../../../../protobuf';
import { MessageParams } from '../../Message';
interface ReadReceiptMessageParams extends MessageParams {
timestamps: Array<number>;
}
export class ReadReceiptMessage extends ContentMessage {
public readonly timestamps: Array<number>;
constructor({ createAtNetworkTimestamp, identifier, timestamps }: ReadReceiptMessageParams) {
super({ createAtNetworkTimestamp, identifier });
this.timestamps = timestamps;
}
public contentProto(): SignalService.Content {
return new SignalService.Content({
receiptMessage: this.receiptProto(),
});
}
protected receiptProto(): SignalService.ReceiptMessage {
return new SignalService.ReceiptMessage({
type: SignalService.ReceiptMessage.Type.READ,
timestamp: this.timestamps,
});
}
}