UNPKG

@idscan/idvc2

Version:

component for the capturing documents

31 lines (30 loc) 1.44 kB
import { TemplateResult } from 'lit-html'; import { getTranslation } from '../../environment/langs'; export type Events = { [key: string]: (data?: any) => void; }; export type HTMLElementID = string; export type StateBase = (Record<string, any> & { translation?: ReturnType<typeof getTranslation>; }) | Record<string, never>; export declare abstract class ComponentLit<T extends StateBase> { protected mountElement: HTMLElement | HTMLElementID; events?: Events; state: T; protected initialState: T; protected componentWrapper: HTMLElement; protected templateFn: (state: T) => TemplateResult; protected constructor(mountElement: HTMLElement | HTMLElementID, state: T, templateFn: (state: any, handlers?: any) => TemplateResult, events?: Events); addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; backToInitialState(): void; unmount(): void; remount(): void; addClassForComponentWrapper(className: string): void; removeClassFromComponentWrapper(className: string): void; protected changeState(state: Record<string, any>): void; protected updateView(property?: any): void; protected replaceHTMLContent(className: string, newContent: string): void; private wrapStateToProxy; protected renderTemplate(): void; private mount; }