UNPKG

lit-html

Version:

HTML template literals in JavaScript

42 lines 1.45 kB
/** * @license * Copyright (c) 2017 The Polymer Project Authors. All rights reserved. * This code may only be used under the BSD style license found at * http://polymer.github.io/LICENSE.txt * The complete set of authors may be found at * http://polymer.github.io/AUTHORS.txt * The complete set of contributors may be found at * http://polymer.github.io/CONTRIBUTORS.txt * Code distributed by Google as part of the polymer project is also * subject to an additional IP rights grant found at * http://polymer.github.io/PATENTS.txt */ /** * @module lit-html */ import { Part } from './part.js'; export declare type DirectiveFactory = (...args: any[]) => object; export declare type DirectiveFn = (part: Part) => void; /** * Brands a function as a directive so that lit-html will call the function * during template rendering, rather than passing as a value. * * @param f The directive factory function. Must be a function that returns a * function of the signature `(part: Part) => void`. The returned function will * be called with the part object * * @example * * ``` * import {directive, html} from 'lit-html'; * * const immutable = directive((v) => (part) => { * if (part.value !== v) { * part.setValue(v) * } * }); * ``` */ export declare const directive: <F extends DirectiveFactory>(f: F) => F; export declare const isDirective: (o: unknown) => o is DirectiveFn; //# sourceMappingURL=directive.d.ts.map