import { DirectiveResult } from 'lit/directive.js'; import { Ref } from 'lit/directives/ref.js'; export type EventHandlerUnion = (e: E & { currentTarget: T; target: Element; }) => void; export type InputEventHandlerUnion = (e: E & { currentTarget: T; target: T extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement ? T : Element; }) => void; export type ChangeEventHandlerUnion = (e: E & { currentTarget: T; target: T extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement ? T : Element; }) => void; export type FocusEventHandlerUnion = (e: E & { currentTarget: T; target: T extends HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement ? T : Element; }) => void; export type EventHandler = { bivarianceHack(event: E): void; }["bivarianceHack"]; export interface CustomAttributes { /** * [Documentation](https://webgis.esri.com/references/lumina/jsx#key-prop) */ key?: unknown; /** * [Documentation](https://webgis.esri.com/references/lumina/jsx#refs) */ ref?: EventHandler | Ref; /** * [Documentation](https://webgis.esri.com/references/lumina/jsx#lit-directives) */ directives?: readonly DirectiveResult[]; /** * [Documentation](https://webgis.esri.com/references/lumina/jsx#deferring-web-component-load) */ deferLoad?: true; }