UNPKG

@actyx/sdk

Version:
48 lines (47 loc) 1.22 kB
import { Timestamp } from '..'; import { Event, Events } from './types'; export declare type RawEvent = Readonly<{ payload: unknown; timestamp: number; source: string; tags?: string[]; }>; export declare type LastPublished = Readonly<{ timestamp: number; psn: number; sequence: number; }>; export declare const eventFactory: () => { mkEvent: (raw: RawEvent) => Event; mkEvents: (raw: RawEvent[]) => { offset: number; stream: string; timestamp: number; lamport: number; appId: string; tags: string[]; payload: unknown; }[]; }; declare type MkNumberEvent = { val: number; source: string; tAdd: (t: Timestamp) => Timestamp; }; declare type MkPadding = { numEvents: number; source: string; tAdd: (t: Timestamp) => Timestamp; }; export declare type MkEvent = MkNumberEvent | MkPadding; export declare const emitter: (source: string) => (val: number) => { val: number; source: string; tAdd: (t: Timestamp) => number; }; export declare type Timeline = { all: Events; of: (...sources: string[]) => Events; }; export declare const mkTimeline: (...events: MkEvent[]) => Timeline; export {};