UNPKG

minijinja-js

Version:

JavaScript bindings for minijinja

165 lines (160 loc) 6.42 kB
/* tslint:disable */ /* eslint-disable */ type UndefinedBehavior = "strict" | "chainable" | "lenient" | "semi_strct"; /** * Represents a MiniJinja environment. */ export class Environment { free(): void; /** * Registers a new template by name and source. */ addTemplate(name: string, source: string): void; /** * Removes a global again. */ removeGlobal(name: string): void; /** * Clears all templates from the environment. */ clearTemplates(): void; /** * Enables python compatibility. */ enablePyCompat(): void; /** * Removes a template by name. */ removeTemplate(name: string): void; /** * Like `renderStr` but with a named template for auto escape detection. */ renderNamedStr(name: string, source: string, ctx: any): string; /** * Renders a registered template by name with the given context. */ renderTemplate(name: string, ctx: any): string; /** * Sets a callback to join template paths (for relative includes/extends). * * The callback receives `(name, parent)` and should return a joined path string. * If it throws or returns a non-string, the original `name` is used. */ setPathJoinCallback(func: Function): void; constructor(); /** * Registers a test function. */ addTest(name: string, func: Function): void; /** * Evaluates an expression with the given context. * * This is useful for evaluating expressions outside of templates. The expression is * parsed and evaluated immediately. */ evalExpr(expr: string, ctx: any): any; /** * Registers a filter function. */ addFilter(name: string, func: Function): void; /** * Registers a value as global. */ addGlobal(name: string, value: any): void; /** * Renders a string template with the given context. * * This is useful for one-off template rendering without registering the template. The * template is parsed and rendered immediately. */ renderStr(source: string, ctx: any): string; /** * Registers a synchronous template loader callback. * * The provided function is called with a template name and must return a * string with the template source or `null`/`undefined` if the template * does not exist. Errors thrown are propagated as MiniJinja errors. */ setLoader(func: Function): void; /** * Enables or disables block trimming. */ trimBlocks: boolean; /** * Enables or disables the lstrip blocks feature. */ lstripBlocks: boolean; /** * Reconfigures the behavior of undefined variables. */ undefinedBehavior: UndefinedBehavior; /** * Enables or disables keeping of the final newline. */ keepTrailingNewline: boolean; /** * Configures the max-fuel for template evaluation. */ get fuel(): number | undefined; set fuel(value: number | null | undefined); /** * Enables or disables debug mode. */ debug: boolean; } export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module; export interface InitOutput { readonly memory: WebAssembly.Memory; readonly __wbg_environment_free: (a: number, b: number) => void; readonly environment_addFilter: (a: number, b: number, c: number, d: number) => void; readonly environment_addGlobal: (a: number, b: number, c: number, d: number, e: number) => void; readonly environment_addTemplate: (a: number, b: number, c: number, d: number, e: number, f: number) => void; readonly environment_addTest: (a: number, b: number, c: number, d: number) => void; readonly environment_clearTemplates: (a: number) => void; readonly environment_debug: (a: number) => number; readonly environment_enablePyCompat: (a: number) => void; readonly environment_evalExpr: (a: number, b: number, c: number, d: number, e: number) => void; readonly environment_fuel: (a: number) => number; readonly environment_keepTrailingNewline: (a: number) => number; readonly environment_lstripBlocks: (a: number) => number; readonly environment_new: () => number; readonly environment_removeGlobal: (a: number, b: number, c: number) => void; readonly environment_removeTemplate: (a: number, b: number, c: number) => void; readonly environment_renderNamedStr: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void; readonly environment_renderStr: (a: number, b: number, c: number, d: number, e: number) => void; readonly environment_renderTemplate: (a: number, b: number, c: number, d: number, e: number) => void; readonly environment_setLoader: (a: number, b: number) => void; readonly environment_setPathJoinCallback: (a: number, b: number) => void; readonly environment_set_debug: (a: number, b: number) => void; readonly environment_set_fuel: (a: number, b: number) => void; readonly environment_set_keepTrailingNewline: (a: number, b: number) => void; readonly environment_set_lstripBlocks: (a: number, b: number) => void; readonly environment_set_trimBlocks: (a: number, b: number) => void; readonly environment_set_undefinedBehavior: (a: number, b: number, c: number) => void; readonly environment_trimBlocks: (a: number) => number; readonly environment_undefinedBehavior: (a: number) => number; readonly __wbindgen_export_0: (a: number, b: number) => number; readonly __wbindgen_export_1: (a: number, b: number, c: number, d: number) => number; readonly __wbindgen_export_2: (a: number) => void; readonly __wbindgen_export_3: (a: number, b: number, c: number) => void; readonly __wbindgen_add_to_stack_pointer: (a: number) => number; } export type SyncInitInput = BufferSource | WebAssembly.Module; /** * Instantiates the given `module`, which can either be bytes or * a precompiled `WebAssembly.Module`. * * @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated. * * @returns {InitOutput} */ export function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput; /** * If `module_or_path` is {RequestInfo} or {URL}, makes a request and * for everything else, calls `WebAssembly.instantiate` directly. * * @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated. * * @returns {Promise<InitOutput>} */ export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;