import { DatastarDatalineElements, DatastarDatalinePatchMode, DatastarDatalineOnlyIfMissing, DatastarDatalineSelector, DatastarDatalineSignals, DatastarDatalineNamespace, DatastarDatalineUseViewTransition, EventTypes, ElementPatchModes, NamespaceTypes } from "./consts.js"; export type Jsonifiable = string | number | boolean | null | undefined | Jsonifiable[] | { [key: string]: Jsonifiable; }; export type ElementPatchMode = typeof ElementPatchModes[number]; export type NamespaceType = typeof NamespaceTypes[number]; export type EventType = typeof EventTypes[number]; export type StreamOptions = Partial<{ onError: (error: unknown) => Promise | void; onAbort: (reason?: string) => Promise | void; responseInit: Record; keepalive: boolean; }>; export interface DatastarEventOptions { eventId?: string; retryDuration?: number; } export interface ElementOptions extends DatastarEventOptions { [DatastarDatalineUseViewTransition]?: boolean; } export interface PatchElementsOptions extends ElementOptions { [DatastarDatalinePatchMode]?: ElementPatchMode; [DatastarDatalineSelector]?: string; [DatastarDatalineNamespace]?: NamespaceType; } export interface patchElementsEvent { event: "datastar-patch-elements"; options: PatchElementsOptions; [DatastarDatalineElements]: string; } export interface PatchSignalsOptions extends DatastarEventOptions { [DatastarDatalineOnlyIfMissing]?: boolean; } export interface patchSignalsEvent { event: "datastar-patch-signals"; options: PatchSignalsOptions; [DatastarDatalineSignals]: Record; } export declare const sseHeaders: { readonly "Cache-Control": "no-cache"; readonly Connection: "keep-alive"; readonly "Content-Type": "text/event-stream"; }; export type MultilineDatalinePrefix = typeof DatastarDatalineElements | typeof DatastarDatalineSignals; export type DatastarEventOptionsUnion = PatchElementsOptions | ElementOptions | PatchSignalsOptions | DatastarEventOptions; export type DatastarEvent = patchElementsEvent | patchSignalsEvent; export declare const DefaultMapping: { readonly mode: "outer"; readonly namespace: "html"; readonly useViewTransition: false; readonly onlyIfMissing: false; }; //# sourceMappingURL=types.d.ts.map