marko
Version:
Optimized runtime for Marko templates.
27 lines (26 loc) • 1.44 kB
TypeScript
import { PendingRenderProp, type Scope } from "../common/types";
import type { Signal } from "./signals";
type ExecFn<S extends Scope = Scope> = (scope: S, arg?: any) => void;
export type PendingRender = {
[PendingRenderProp.Key]: number;
[PendingRenderProp.Scope]: Scope;
[PendingRenderProp.Signal]: Signal<any, any>;
[PendingRenderProp.Value]: unknown;
[PendingRenderProp.Gen]: number;
[PendingRenderProp.Pending]?: 0 | 1;
};
export declare let rendering: undefined | 0 | 1;
export declare let runId: number;
export declare const caughtError: WeakSet<unknown[]>;
export declare const placeholderShown: WeakSet<unknown[]>;
export declare let pendingEffects: unknown[];
export declare function queueRender<T, U extends Scope = Scope>(scope: U, signal: Signal<T, U>, signalKey: number, value?: T, scopeKey?: number): void;
export declare function queuePendingRender(render: PendingRender): void;
export declare function queueEffect<S extends Scope, T extends ExecFn<S>>(scope: S, fn: T): void;
export declare function run(): void;
export declare function queueAsyncRender<T, U extends Scope = Scope>(scope: U, signal: Signal<T, U>, value?: T): void;
export declare function prepareEffects(fn: () => void): unknown[];
export declare let runEffects: (effects: unknown[], checkPending?: boolean | 1) => void;
export declare function skipDestroyedRenders(): void;
export declare function _enable_catch(): void;
export {};