trellis
Version:
Agentic State Engine — event-sourced causal graph with branching, decision traces, and realtime sync for AI-native applications
30 lines • 1.29 kB
TypeScript
/**
* Admin TML shell — connect/seed/mount lifecycle + unified mutation facade.
* @module trellis/ui
*/
import { type TmlDriver } from './tml-runtime.js';
export { rehydrateShellsForView } from './tml-shell-registry.js';
export type AdminDriverMode = 'web' | 'peer';
export interface AdminShellOptions {
/** DOM subtree root for `mount()` — typically `.main` */
mountRoot: Element;
/** Called on every snapshot seed (initial connect + SSE snapshot events) */
onSnapshot?: (snap: unknown) => void;
baseUrl?: string;
/** Default `'web'`. Read from `?driver=peer` when omitted. */
driver?: AdminDriverMode;
/** Test hook — overrides `location.search` for driver resolution */
locationSearch?: string;
snapshotUrl?: string;
streamUrl?: string;
}
export interface AdminShell {
readonly driver: TmlDriver;
/** Fetch snapshot, seed store, subscribe SSE snapshots, then mount TML */
connect(): Promise<void>;
/** POST /api/tml-mutations via driver */
op(action: string, args: Record<string, unknown>): Promise<void>;
}
export declare function resolveDriverMode(opts: AdminShellOptions): AdminDriverMode;
export declare function createAdminShell(opts: AdminShellOptions): AdminShell;
//# sourceMappingURL=admin-shell.d.ts.map