export interface TabtalkMessage<T> {
    body: T;
    meta: TabtalkMessageMeta;
}
export interface TabtalkMessageMeta {
    recipientId: string | null;
    senderId: string;
    createdAt: number;
}
export declare const VALIDATION_ERROR_INVALID_SENDER_ID = "Invalid senderId";
export declare class TabtalkMessageFactory {
    body: any;
    recipientId: TabtalkMessageMeta['recipientId'];
    senderId: TabtalkMessageMeta['senderId'];
    createdAt: TabtalkMessageMeta['createdAt'];
    setBody: (body: any) => void;
    setRecipientId: (recipientId: string) => void;
    setSenderId: (senderId: string) => void;
    throwIfInvalidMessageProperties: () => void;
    build: <T>() => TabtalkMessage<T>;
}
