UNPKG

ui-lit

Version:

UI Elements on LIT

52 lines (51 loc) 1.64 kB
import { LitElement } from 'lit'; import { FormAssociatedElement } from '../mixins/form-associated/interface'; import '../label'; import type { LitButton } from '../button/index'; declare type TReturnData = Record<string, string | boolean | number | string[]>; export interface IFormProps { disabled: boolean; noValidate: boolean; } export declare type TAction = (data?: TReturnData) => Promise<TReturnData | false>; export interface IFormElement { checkValidity(): boolean; reportValidity(): boolean; submit(): void; getData(): TReturnData; } export declare class LitFrom extends LitElement implements IFormElement, IFormProps { static styles: import("lit").CSSResult; noValidate: boolean; onAction?: TAction; private _elements; private _defaults; private _button; private _loading; get button(): LitButton | null; get length(): number; get elements(): FormAssociatedElement[]; private _disabled; get disabled(): boolean; set disabled(value: boolean); render(): import("lit").TemplateResult<1>; connectedCallback(): void; disconnectedCallback(): void; private _handleSubmit; private _handleFormAttached; private _addToDefault; detatchElement(el: HTMLElement): void; getData(): TReturnData; checkValidity(): boolean; reportValidity(): boolean; private _startLoading; private _stopLoading; submit(): Promise<false | TReturnData>; reset(): Promise<unknown>; } declare global { interface HTMLElementTagNameMap { 'lit-form': LitFrom; } } export {};