UNPKG

magnitude-core

Version:
33 lines (32 loc) 1.66 kB
import { BamlRenderable } from './context'; import { Image } from './image'; import { MultiMediaJson } from './serde'; export type ObservableDataPrimitive = Image | string | number | boolean | null | undefined; export type ObservableDataArray = Array<ObservableData>; export type ObservableDataObject = { [key: string]: ObservableData; }; export type ObservableData = ObservableDataPrimitive | ObservableDataArray | ObservableDataObject; export interface ObservationOptions { type: string; limit?: number; dedupe?: boolean; } export type ObservationSource = `connector:${string}` | `action:taken:${string}` | `action:result:${string}` | `thought`; export declare class Observation { readonly source: ObservationSource; readonly timestamp: number; readonly data: ObservableData; readonly options?: ObservationOptions; constructor(source: ObservationSource, data: ObservableData, options?: ObservationOptions); static fromConnector(connectorId: string, data: ObservableData, options?: ObservationOptions): Observation; static fromActionTaken(actionId: string, data: ObservableData, options?: ObservationOptions): Observation; static fromActionResult(actionId: string, data: ObservableData, options?: ObservationOptions): Observation; static fromThought(data: ObservableData, options?: ObservationOptions): Observation; toString(): string; toJson(): Promise<MultiMediaJson>; toContext(): Promise<BamlRenderable[]>; hash(): Promise<string>; equals(obs: Observation): Promise<boolean>; } export declare function renderObservations(observations: Observation[]): Promise<BamlRenderable[]>;