import { type Operation } from "effection"; export type SignalAttrs = Record; export interface SignalPad { i: string; dt: string; r: string; a: T; } /** * Transient host signal matching the KERIpy `Signal` pad shape. * * Unlike `Notice`, this is not durably stored. Hosts use it as a reload hint. */ export declare class Signal { #private; constructor(init: { raw: Uint8Array; ckey?: string; } | { pad: Omit>, "a" | "r"> & { a: T; r: string; }; ckey?: string; }); get raw(): Uint8Array; set raw(raw: Uint8Array); get pad(): SignalPad; set pad(pad: Omit>, "a" | "r"> & { a: T; r: string; }); get rid(): string; get datetime(): string; get topic(): string; get attrs(): T; get ckey(): string | undefined; asDict(): SignalPad; } export declare function signal(attrs: T, topic: string, options?: { ckey?: string; dt?: string | Date; }): Signal; /** * In-memory transient signal queue with KERIpy-style collapse-key replacement. */ export declare class Signaler { static readonly SignalTimeoutMs: number; readonly signals: Signal[]; readonly signalTimeoutMs: number; constructor({ signals, signalTimeoutMs, }?: { signals?: Signal[]; signalTimeoutMs?: number; }); push(attrs: T, topic: string, options?: { ckey?: string; dt?: string | Date; }): Signal; list(): Signal[]; count(): number; processOnce(now?: number): number; signalDo(): Operation; } //# sourceMappingURL=signaling.d.ts.map