UNPKG

preact

Version:

Fast 3kb React-compatible Virtual DOM library.

1,764 lines (1,726 loc) 103 kB
// Users who only use Preact for SSR might not specify "dom" in their lib in tsconfig.json /// <reference lib="dom" /> import { ClassAttributes, Component, ComponentChild, ComponentType, FunctionComponent, PreactDOMAttributes, VNode } from './index'; type Defaultize<Props, Defaults> = // Distribute over unions Props extends any // Make any properties included in Default optional ? Partial<Pick<Props, Extract<keyof Props, keyof Defaults>>> & // Include the remaining properties from Props Pick<Props, Exclude<keyof Props, keyof Defaults>> : never; type Booleanish = boolean | 'true' | 'false'; export namespace JSXInternal { export type LibraryManagedAttributes<Component, Props> = Component extends { defaultProps: infer Defaults; } ? Defaultize<Props, Defaults> : Props; export interface IntrinsicAttributes { key?: any; } export type ElementType<P = any> = | { [K in keyof IntrinsicElements]: P extends IntrinsicElements[K] ? K : never; }[keyof IntrinsicElements] | ComponentType<P>; export interface Element extends VNode<any> {} export type ElementClass = Component<any, any> | FunctionComponent<any>; export interface ElementAttributesProperty { props: any; } export interface ElementChildrenAttribute { children: any; } export type DOMCSSProperties = { [key in keyof Omit< CSSStyleDeclaration, | 'item' | 'setProperty' | 'removeProperty' | 'getPropertyValue' | 'getPropertyPriority' >]?: string | number | null | undefined; }; export type AllCSSProperties = { [key: string]: string | number | null | undefined; }; export interface CSSProperties extends AllCSSProperties, DOMCSSProperties { cssText?: string | null; } export interface SignalLike<T> { value: T; peek(): T; subscribe(fn: (value: T) => void): () => void; } export type Signalish<T> = T | SignalLike<T>; export type UnpackSignal<T> = T extends SignalLike<infer V> ? V : T; export interface SVGAttributes<Target extends EventTarget = SVGElement> extends HTMLAttributes<Target> { accentHeight?: | number | string | undefined | SignalLike<number | string | undefined>; accumulate?: | 'none' | 'sum' | undefined | SignalLike<'none' | 'sum' | undefined>; additive?: | 'replace' | 'sum' | undefined | SignalLike<'replace' | 'sum' | undefined>; alignmentBaseline?: | 'auto' | 'baseline' | 'before-edge' | 'text-before-edge' | 'middle' | 'central' | 'after-edge' | 'text-after-edge' | 'ideographic' | 'alphabetic' | 'hanging' | 'mathematical' | 'inherit' | undefined | SignalLike< | 'auto' | 'baseline' | 'before-edge' | 'text-before-edge' | 'middle' | 'central' | 'after-edge' | 'text-after-edge' | 'ideographic' | 'alphabetic' | 'hanging' | 'mathematical' | 'inherit' | undefined >; 'alignment-baseline'?: | 'auto' | 'baseline' | 'before-edge' | 'text-before-edge' | 'middle' | 'central' | 'after-edge' | 'text-after-edge' | 'ideographic' | 'alphabetic' | 'hanging' | 'mathematical' | 'inherit' | undefined | SignalLike< | 'auto' | 'baseline' | 'before-edge' | 'text-before-edge' | 'middle' | 'central' | 'after-edge' | 'text-after-edge' | 'ideographic' | 'alphabetic' | 'hanging' | 'mathematical' | 'inherit' | undefined >; allowReorder?: | 'no' | 'yes' | undefined | SignalLike<'no' | 'yes' | undefined>; 'allow-reorder'?: | 'no' | 'yes' | undefined | SignalLike<'no' | 'yes' | undefined>; alphabetic?: | number | string | undefined | SignalLike<number | string | undefined>; amplitude?: | number | string | undefined | SignalLike<number | string | undefined>; /** @deprecated See https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/arabic-form */ arabicForm?: | 'initial' | 'medial' | 'terminal' | 'isolated' | undefined | SignalLike<'initial' | 'medial' | 'terminal' | 'isolated' | undefined>; /** @deprecated See https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/arabic-form */ 'arabic-form'?: | 'initial' | 'medial' | 'terminal' | 'isolated' | undefined | SignalLike<'initial' | 'medial' | 'terminal' | 'isolated' | undefined>; ascent?: | number | string | undefined | SignalLike<number | string | undefined>; attributeName?: string | undefined | SignalLike<string | undefined>; attributeType?: string | undefined | SignalLike<string | undefined>; autoReverse?: | number | string | undefined | SignalLike<number | string | undefined>; azimuth?: | number | string | undefined | SignalLike<number | string | undefined>; baseFrequency?: | number | string | undefined | SignalLike<number | string | undefined>; baselineShift?: | number | string | undefined | SignalLike<number | string | undefined>; 'baseline-shift'?: | number | string | undefined | SignalLike<number | string | undefined>; baseProfile?: | number | string | undefined | SignalLike<number | string | undefined>; bbox?: | number | string | undefined | SignalLike<number | string | undefined>; begin?: | number | string | undefined | SignalLike<number | string | undefined>; bias?: | number | string | undefined | SignalLike<number | string | undefined>; by?: number | string | undefined | SignalLike<number | string | undefined>; calcMode?: | number | string | undefined | SignalLike<number | string | undefined>; capHeight?: | number | string | undefined | SignalLike<number | string | undefined>; 'cap-height'?: | number | string | undefined | SignalLike<number | string | undefined>; clip?: | number | string | undefined | SignalLike<number | string | undefined>; clipPath?: string | undefined | SignalLike<string | undefined>; 'clip-path'?: string | undefined | SignalLike<string | undefined>; clipPathUnits?: | number | string | undefined | SignalLike<number | string | undefined>; clipRule?: | number | string | undefined | SignalLike<number | string | undefined>; 'clip-rule'?: | number | string | undefined | SignalLike<number | string | undefined>; colorInterpolation?: | number | string | undefined | SignalLike<number | string | undefined>; 'color-interpolation'?: | number | string | undefined | SignalLike<number | string | undefined>; colorInterpolationFilters?: | 'auto' | 'sRGB' | 'linearRGB' | 'inherit' | undefined | SignalLike<'auto' | 'sRGB' | 'linearRGB' | 'inherit' | undefined>; 'color-interpolation-filters'?: | 'auto' | 'sRGB' | 'linearRGB' | 'inherit' | undefined | SignalLike<'auto' | 'sRGB' | 'linearRGB' | 'inherit' | undefined>; colorProfile?: | number | string | undefined | SignalLike<number | string | undefined>; 'color-profile'?: | number | string | undefined | SignalLike<number | string | undefined>; colorRendering?: | number | string | undefined | SignalLike<number | string | undefined>; 'color-rendering'?: | number | string | undefined | SignalLike<number | string | undefined>; contentScriptType?: | number | string | undefined | SignalLike<number | string | undefined>; 'content-script-type'?: | number | string | undefined | SignalLike<number | string | undefined>; contentStyleType?: | number | string | undefined | SignalLike<number | string | undefined>; 'content-style-type'?: | number | string | undefined | SignalLike<number | string | undefined>; cursor?: | number | string | undefined | SignalLike<number | string | undefined>; cx?: number | string | undefined | SignalLike<number | string | undefined>; cy?: number | string | undefined | SignalLike<number | string | undefined>; d?: string | undefined | SignalLike<string | undefined>; decelerate?: | number | string | undefined | SignalLike<number | string | undefined>; descent?: | number | string | undefined | SignalLike<number | string | undefined>; diffuseConstant?: | number | string | undefined | SignalLike<number | string | undefined>; direction?: | number | string | undefined | SignalLike<number | string | undefined>; display?: | number | string | undefined | SignalLike<number | string | undefined>; divisor?: | number | string | undefined | SignalLike<number | string | undefined>; dominantBaseline?: | number | string | undefined | SignalLike<number | string | undefined>; 'dominant-baseline'?: | number | string | undefined | SignalLike<number | string | undefined>; dur?: number | string | undefined | SignalLike<number | string | undefined>; dx?: number | string | undefined | SignalLike<number | string | undefined>; dy?: number | string | undefined | SignalLike<number | string | undefined>; edgeMode?: | number | string | undefined | SignalLike<number | string | undefined>; elevation?: | number | string | undefined | SignalLike<number | string | undefined>; enableBackground?: | number | string | undefined | SignalLike<number | string | undefined>; 'enable-background'?: | number | string | undefined | SignalLike<number | string | undefined>; end?: number | string | undefined | SignalLike<number | string | undefined>; exponent?: | number | string | undefined | SignalLike<number | string | undefined>; externalResourcesRequired?: | number | string | undefined | SignalLike<number | string | undefined>; fill?: string | undefined | SignalLike<string | undefined>; fillOpacity?: | number | string | undefined | SignalLike<number | string | undefined>; 'fill-opacity'?: | number | string | undefined | SignalLike<number | string | undefined>; fillRule?: | 'nonzero' | 'evenodd' | 'inherit' | undefined | SignalLike<'nonzero' | 'evenodd' | 'inherit' | undefined>; 'fill-rule'?: | 'nonzero' | 'evenodd' | 'inherit' | undefined | SignalLike<'nonzero' | 'evenodd' | 'inherit' | undefined>; filter?: string | undefined | SignalLike<string | undefined>; filterRes?: | number | string | undefined | SignalLike<number | string | undefined>; filterUnits?: | number | string | undefined | SignalLike<number | string | undefined>; floodColor?: | number | string | undefined | SignalLike<number | string | undefined>; 'flood-color'?: | number | string | undefined | SignalLike<number | string | undefined>; floodOpacity?: | number | string | undefined | SignalLike<number | string | undefined>; 'flood-opacity'?: | number | string | undefined | SignalLike<number | string | undefined>; focusable?: | number | string | undefined | SignalLike<number | string | undefined>; fontFamily?: string | undefined | SignalLike<string | undefined>; 'font-family'?: string | undefined | SignalLike<string | undefined>; fontSize?: | number | string | undefined | SignalLike<number | string | undefined>; 'font-size'?: | number | string | undefined | SignalLike<number | string | undefined>; fontSizeAdjust?: | number | string | undefined | SignalLike<number | string | undefined>; 'font-size-adjust'?: | number | string | undefined | SignalLike<number | string | undefined>; fontStretch?: | number | string | undefined | SignalLike<number | string | undefined>; 'font-stretch'?: | number | string | undefined | SignalLike<number | string | undefined>; fontStyle?: | number | string | undefined | SignalLike<number | string | undefined>; 'font-style'?: | number | string | undefined | SignalLike<number | string | undefined>; fontVariant?: | number | string | undefined | SignalLike<number | string | undefined>; 'font-variant'?: | number | string | undefined | SignalLike<number | string | undefined>; fontWeight?: | number | string | undefined | SignalLike<number | string | undefined>; 'font-weight'?: | number | string | undefined | SignalLike<number | string | undefined>; format?: | number | string | undefined | SignalLike<number | string | undefined>; from?: | number | string | undefined | SignalLike<number | string | undefined>; fx?: number | string | undefined | SignalLike<number | string | undefined>; fy?: number | string | undefined | SignalLike<number | string | undefined>; g1?: number | string | undefined | SignalLike<number | string | undefined>; g2?: number | string | undefined | SignalLike<number | string | undefined>; glyphName?: | number | string | undefined | SignalLike<number | string | undefined>; 'glyph-name'?: | number | string | undefined | SignalLike<number | string | undefined>; glyphOrientationHorizontal?: | number | string | undefined | SignalLike<number | string | undefined>; 'glyph-orientation-horizontal'?: | number | string | undefined | SignalLike<number | string | undefined>; glyphOrientationVertical?: | number | string | undefined | SignalLike<number | string | undefined>; 'glyph-orientation-vertical'?: | number | string | undefined | SignalLike<number | string | undefined>; glyphRef?: | number | string | undefined | SignalLike<number | string | undefined>; gradientTransform?: string | undefined | SignalLike<string | undefined>; gradientUnits?: string | undefined | SignalLike<string | undefined>; hanging?: | number | string | undefined | SignalLike<number | string | undefined>; horizAdvX?: | number | string | undefined | SignalLike<number | string | undefined>; 'horiz-adv-x'?: | number | string | undefined | SignalLike<number | string | undefined>; horizOriginX?: | number | string | undefined | SignalLike<number | string | undefined>; 'horiz-origin-x'?: | number | string | undefined | SignalLike<number | string | undefined>; ideographic?: | number | string | undefined | SignalLike<number | string | undefined>; imageRendering?: | number | string | undefined | SignalLike<number | string | undefined>; 'image-rendering'?: | number | string | undefined | SignalLike<number | string | undefined>; in2?: number | string | undefined | SignalLike<number | string | undefined>; in?: string | undefined | SignalLike<string | undefined>; intercept?: | number | string | undefined | SignalLike<number | string | undefined>; k1?: number | string | undefined | SignalLike<number | string | undefined>; k2?: number | string | undefined | SignalLike<number | string | undefined>; k3?: number | string | undefined | SignalLike<number | string | undefined>; k4?: number | string | undefined | SignalLike<number | string | undefined>; k?: number | string | undefined | SignalLike<number | string | undefined>; kernelMatrix?: | number | string | undefined | SignalLike<number | string | undefined>; kernelUnitLength?: | number | string | undefined | SignalLike<number | string | undefined>; kerning?: | number | string | undefined | SignalLike<number | string | undefined>; keyPoints?: | number | string | undefined | SignalLike<number | string | undefined>; keySplines?: | number | string | undefined | SignalLike<number | string | undefined>; keyTimes?: | number | string | undefined | SignalLike<number | string | undefined>; lengthAdjust?: | number | string | undefined | SignalLike<number | string | undefined>; letterSpacing?: | number | string | undefined | SignalLike<number | string | undefined>; 'letter-spacing'?: | number | string | undefined | SignalLike<number | string | undefined>; lightingColor?: | number | string | undefined | SignalLike<number | string | undefined>; 'lighting-color'?: | number | string | undefined | SignalLike<number | string | undefined>; limitingConeAngle?: | number | string | undefined | SignalLike<number | string | undefined>; local?: | number | string | undefined | SignalLike<number | string | undefined>; markerEnd?: string | undefined | SignalLike<string | undefined>; 'marker-end'?: string | undefined | SignalLike<string | undefined>; markerHeight?: | number | string | undefined | SignalLike<number | string | undefined>; markerMid?: string | undefined | SignalLike<string | undefined>; 'marker-mid'?: string | undefined | SignalLike<string | undefined>; markerStart?: string | undefined | SignalLike<string | undefined>; 'marker-start'?: string | undefined | SignalLike<string | undefined>; markerUnits?: | number | string | undefined | SignalLike<number | string | undefined>; markerWidth?: | number | string | undefined | SignalLike<number | string | undefined>; mask?: string | undefined | SignalLike<string | undefined>; maskContentUnits?: | number | string | undefined | SignalLike<number | string | undefined>; maskUnits?: | number | string | undefined | SignalLike<number | string | undefined>; mathematical?: | number | string | undefined | SignalLike<number | string | undefined>; mode?: | number | string | undefined | SignalLike<number | string | undefined>; numOctaves?: | number | string | undefined | SignalLike<number | string | undefined>; offset?: | number | string | undefined | SignalLike<number | string | undefined>; opacity?: | number | string | undefined | SignalLike<number | string | undefined>; operator?: | number | string | undefined | SignalLike<number | string | undefined>; order?: | number | string | undefined | SignalLike<number | string | undefined>; orient?: | number | string | undefined | SignalLike<number | string | undefined>; orientation?: | number | string | undefined | SignalLike<number | string | undefined>; origin?: | number | string | undefined | SignalLike<number | string | undefined>; overflow?: | number | string | undefined | SignalLike<number | string | undefined>; overlinePosition?: | number | string | undefined | SignalLike<number | string | undefined>; 'overline-position'?: | number | string | undefined | SignalLike<number | string | undefined>; overlineThickness?: | number | string | undefined | SignalLike<number | string | undefined>; 'overline-thickness'?: | number | string | undefined | SignalLike<number | string | undefined>; paintOrder?: | number | string | undefined | SignalLike<number | string | undefined>; 'paint-order'?: | number | string | undefined | SignalLike<number | string | undefined>; panose1?: | number | string | undefined | SignalLike<number | string | undefined>; 'panose-1'?: | number | string | undefined | SignalLike<number | string | undefined>; pathLength?: | number | string | undefined | SignalLike<number | string | undefined>; patternContentUnits?: string | undefined | SignalLike<string | undefined>; patternTransform?: | number | string | undefined | SignalLike<number | string | undefined>; patternUnits?: string | undefined | SignalLike<string | undefined>; pointerEvents?: | number | string | undefined | SignalLike<number | string | undefined>; 'pointer-events'?: | number | string | undefined | SignalLike<number | string | undefined>; points?: string | undefined | SignalLike<string | undefined>; pointsAtX?: | number | string | undefined | SignalLike<number | string | undefined>; pointsAtY?: | number | string | undefined | SignalLike<number | string | undefined>; pointsAtZ?: | number | string | undefined | SignalLike<number | string | undefined>; preserveAlpha?: | number | string | undefined | SignalLike<number | string | undefined>; preserveAspectRatio?: string | undefined | SignalLike<string | undefined>; primitiveUnits?: | number | string | undefined | SignalLike<number | string | undefined>; r?: number | string | undefined | SignalLike<number | string | undefined>; radius?: | number | string | undefined | SignalLike<number | string | undefined>; refX?: | number | string | undefined | SignalLike<number | string | undefined>; refY?: | number | string | undefined | SignalLike<number | string | undefined>; renderingIntent?: | number | string | undefined | SignalLike<number | string | undefined>; 'rendering-intent'?: | number | string | undefined | SignalLike<number | string | undefined>; repeatCount?: | number | string | undefined | SignalLike<number | string | undefined>; 'repeat-count'?: | number | string | undefined | SignalLike<number | string | undefined>; repeatDur?: | number | string | undefined | SignalLike<number | string | undefined>; 'repeat-dur'?: | number | string | undefined | SignalLike<number | string | undefined>; requiredExtensions?: | number | string | undefined | SignalLike<number | string | undefined>; requiredFeatures?: | number | string | undefined | SignalLike<number | string | undefined>; restart?: | number | string | undefined | SignalLike<number | string | undefined>; result?: string | undefined | SignalLike<string | undefined>; rotate?: | number | string | undefined | SignalLike<number | string | undefined>; rx?: number | string | undefined | SignalLike<number | string | undefined>; ry?: number | string | undefined | SignalLike<number | string | undefined>; scale?: | number | string | undefined | SignalLike<number | string | undefined>; seed?: | number | string | undefined | SignalLike<number | string | undefined>; shapeRendering?: | number | string | undefined | SignalLike<number | string | undefined>; 'shape-rendering'?: | number | string | undefined | SignalLike<number | string | undefined>; slope?: | number | string | undefined | SignalLike<number | string | undefined>; spacing?: | number | string | undefined | SignalLike<number | string | undefined>; specularConstant?: | number | string | undefined | SignalLike<number | string | undefined>; specularExponent?: | number | string | undefined | SignalLike<number | string | undefined>; speed?: | number | string | undefined | SignalLike<number | string | undefined>; spreadMethod?: string | undefined | SignalLike<string | undefined>; startOffset?: | number | string | undefined | SignalLike<number | string | undefined>; stdDeviation?: | number | string | undefined | SignalLike<number | string | undefined>; stemh?: | number | string | undefined | SignalLike<number | string | undefined>; stemv?: | number | string | undefined | SignalLike<number | string | undefined>; stitchTiles?: | number | string | undefined | SignalLike<number | string | undefined>; stopColor?: string | undefined | SignalLike<string | undefined>; 'stop-color'?: string | undefined | SignalLike<string | undefined>; stopOpacity?: | number | string | undefined | SignalLike<number | string | undefined>; 'stop-opacity'?: | number | string | undefined | SignalLike<number | string | undefined>; strikethroughPosition?: | number | string | undefined | SignalLike<number | string | undefined>; 'strikethrough-position'?: | number | string | undefined | SignalLike<number | string | undefined>; strikethroughThickness?: | number | string | undefined | SignalLike<number | string | undefined>; 'strikethrough-thickness'?: | number | string | undefined | SignalLike<number | string | undefined>; string?: | number | string | undefined | SignalLike<number | string | undefined>; stroke?: string | undefined | SignalLike<string | undefined>; strokeDasharray?: | string | number | undefined | SignalLike<number | string | undefined>; 'stroke-dasharray'?: | string | number | undefined | SignalLike<number | string | undefined>; strokeDashoffset?: | string | number | undefined | SignalLike<number | string | undefined>; 'stroke-dashoffset'?: | string | number | undefined | SignalLike<number | string | undefined>; strokeLinecap?: | 'butt' | 'round' | 'square' | 'inherit' | undefined | SignalLike<'butt' | 'round' | 'square' | 'inherit' | undefined>; 'stroke-linecap'?: | 'butt' | 'round' | 'square' | 'inherit' | undefined | SignalLike<'butt' | 'round' | 'square' | 'inherit' | undefined>; strokeLinejoin?: | 'miter' | 'round' | 'bevel' | 'inherit' | undefined | SignalLike<'miter' | 'round' | 'bevel' | 'inherit' | undefined>; 'stroke-linejoin'?: | 'miter' | 'round' | 'bevel' | 'inherit' | undefined | SignalLike<'miter' | 'round' | 'bevel' | 'inherit' | undefined>; strokeMiterlimit?: | string | number | undefined | SignalLike<number | string | undefined>; 'stroke-miterlimit'?: | string | number | undefined | SignalLike<number | string | undefined>; strokeOpacity?: | number | string | undefined | SignalLike<number | string | undefined>; 'stroke-opacity'?: | number | string | undefined | SignalLike<number | string | undefined>; strokeWidth?: | number | string | undefined | SignalLike<number | string | undefined>; 'stroke-width'?: | number | string | undefined | SignalLike<number | string | undefined>; surfaceScale?: | number | string | undefined | SignalLike<number | string | undefined>; systemLanguage?: | number | string | undefined | SignalLike<number | string | undefined>; tableValues?: | number | string | undefined | SignalLike<number | string | undefined>; targetX?: | number | string | undefined | SignalLike<number | string | undefined>; targetY?: | number | string | undefined | SignalLike<number | string | undefined>; textAnchor?: string | undefined | SignalLike<string | undefined>; 'text-anchor'?: string | undefined | SignalLike<string | undefined>; textDecoration?: | number | string | undefined | SignalLike<number | string | undefined>; 'text-decoration'?: | number | string | undefined | SignalLike<number | string | undefined>; textLength?: | number | string | undefined | SignalLike<number | string | undefined>; textRendering?: | number | string | undefined | SignalLike<number | string | undefined>; to?: number | string | undefined | SignalLike<number | string | undefined>; transform?: string | undefined | SignalLike<string | undefined>; u1?: number | string | undefined | SignalLike<number | string | undefined>; u2?: number | string | undefined | SignalLike<number | string | undefined>; underlinePosition?: | number | string | undefined | SignalLike<number | string | undefined>; 'underline-position'?: | number | string | undefined | SignalLike<number | string | undefined>; underlineThickness?: | number | string | undefined | SignalLike<number | string | undefined>; 'underline-thickness'?: | number | string | undefined | SignalLike<number | string | undefined>; unicode?: | number | string | undefined | SignalLike<number | string | undefined>; unicodeBidi?: | number | string | undefined | SignalLike<number | string | undefined>; 'unicode-bidi'?: | number | string | undefined | SignalLike<number | string | undefined>; unicodeRange?: | number | string | undefined | SignalLike<number | string | undefined>; 'unicode-range'?: | number | string | undefined | SignalLike<number | string | undefined>; unitsPerEm?: | number | string | undefined | SignalLike<number | string | undefined>; 'units-per-em'?: | number | string | undefined | SignalLike<number | string | undefined>; vAlphabetic?: | number | string | undefined | SignalLike<number | string | undefined>; 'v-alphabetic'?: | number | string | undefined | SignalLike<number | string | undefined>; values?: string | undefined | SignalLike<string | undefined>; vectorEffect?: | number | string | undefined | SignalLike<number | string | undefined>; 'vector-effect'?: | number | string | undefined | SignalLike<number | string | undefined>; version?: string | undefined | SignalLike<string | undefined>; vertAdvY?: | number | string | undefined | SignalLike<number | string | undefined>; 'vert-adv-y'?: | number | string | undefined | SignalLike<number | string | undefined>; vertOriginX?: | number | string | undefined | SignalLike<number | string | undefined>; 'vert-origin-x'?: | number | string | undefined | SignalLike<number | string | undefined>; vertOriginY?: | number | string | undefined | SignalLike<number | string | undefined>; 'vert-origin-y'?: | number | string | undefined | SignalLike<number | string | undefined>; vHanging?: | number | string | undefined | SignalLike<number | string | undefined>; 'v-hanging'?: | number | string | undefined | SignalLike<number | string | undefined>; vIdeographic?: | number | string | undefined | SignalLike<number | string | undefined>; 'v-ideographic'?: | number | string | undefined | SignalLike<number | string | undefined>; viewBox?: string | undefined | SignalLike<string | undefined>; viewTarget?: | number | string | undefined | SignalLike<number | string | undefined>; visibility?: | number | string | undefined | SignalLike<number | string | undefined>; vMathematical?: | number | string | undefined | SignalLike<number | string | undefined>; 'v-mathematical'?: | number | string | undefined | SignalLike<number | string | undefined>; widths?: | number | string | undefined | SignalLike<number | string | undefined>; wordSpacing?: | number | string | undefined | SignalLike<number | string | undefined>; 'word-spacing'?: | number | string | undefined | SignalLike<number | string | undefined>; writingMode?: | number | string | undefined | SignalLike<number | string | undefined>; 'writing-mode'?: | number | string | undefined | SignalLike<number | string | undefined>; x1?: number | string | undefined | SignalLike<number | string | undefined>; x2?: number | string | undefined | SignalLike<number | string | undefined>; x?: number | string | undefined | SignalLike<number | string | undefined>; xChannelSelector?: string | undefined | SignalLike<string | undefined>; xHeight?: | number | string | undefined | SignalLike<number | string | undefined>; 'x-height'?: | number | string | undefined | SignalLike<number | string | undefined>; xlinkActuate?: string | undefined | SignalLike<string | undefined>; 'xlink:actuate'?: SVGAttributes['xlinkActuate']; xlinkArcrole?: string | undefined | SignalLike<string | undefined>; 'xlink:arcrole'?: string | undefined | SignalLike<string | undefined>; xlinkHref?: string | undefined | SignalLike<string | undefined>; 'xlink:href'?: string | undefined | SignalLike<string | undefined>; xlinkRole?: string | undefined | SignalLike<string | undefined>; 'xlink:role'?: string | undefined | SignalLike<string | undefined>; xlinkShow?: string | undefined | SignalLike<string | undefined>; 'xlink:show'?: string | undefined | SignalLike<string | undefined>; xlinkTitle?: string | undefined | SignalLike<string | undefined>; 'xlink:title'?: string | undefined | SignalLike<string | undefined>; xlinkType?: string | undefined | SignalLike<string | undefined>; 'xlink:type'?: string | undefined | SignalLike<string | undefined>; xmlBase?: string | undefined | SignalLike<string | undefined>; 'xml:base'?: string | undefined | SignalLike<string | undefined>; xmlLang?: string | undefined | SignalLike<string | undefined>; 'xml:lang'?: string | undefined | SignalLike<string | undefined>; xmlns?: string | undefined | SignalLike<string | undefined>; xmlnsXlink?: string | undefined | SignalLike<string | undefined>; xmlSpace?: string | undefined | SignalLike<string | undefined>; 'xml:space'?: string | undefined | SignalLike<string | undefined>; y1?: number | string | undefined | SignalLike<number | string | undefined>; y2?: number | string | undefined | SignalLike<number | string | undefined>; y?: number | string | undefined | SignalLike<number | string | undefined>; yChannelSelector?: string | undefined | SignalLike<string | undefined>; z?: number | string | undefined | SignalLike<number | string | undefined>; zoomAndPan?: string | undefined | SignalLike<string | undefined>; } export interface PathAttributes { d: string; } export type TargetedEvent< Target extends EventTarget = EventTarget, TypedEvent extends Event = Event > = Omit<TypedEvent, 'currentTarget'> & { readonly currentTarget: Target; }; export type TargetedAnimationEvent<Target extends EventTarget> = TargetedEvent<Target, AnimationEvent>; export type TargetedClipboardEvent<Target extends EventTarget> = TargetedEvent<Target, ClipboardEvent>; export type TargetedCompositionEvent<Target extends EventTarget> = TargetedEvent<Target, CompositionEvent>; export type TargetedDragEvent<Target extends EventTarget> = TargetedEvent< Target, DragEvent >; export type TargetedFocusEvent<Target extends EventTarget> = TargetedEvent< Target, FocusEvent >; export type TargetedInputEvent<Target extends EventTarget> = TargetedEvent< Target, InputEvent >; export type TargetedKeyboardEvent<Target extends EventTarget> = TargetedEvent< Target, KeyboardEvent >; export type TargetedMouseEvent<Target extends EventTarget> = TargetedEvent< Target, MouseEvent >; export type TargetedPointerEvent<Target extends EventTarget> = TargetedEvent< Target, PointerEvent >; export type TargetedSubmitEvent<Target extends EventTarget> = TargetedEvent< Target, SubmitEvent >; export type TargetedTouchEvent<Target extends EventTarget> = TargetedEvent< Target, TouchEvent >; export type TargetedTransitionEvent<Target extends EventTarget> = TargetedEvent<Target, TransitionEvent>; export type TargetedUIEvent<Target extends EventTarget> = TargetedEvent< Target, UIEvent >; export type TargetedWheelEvent<Target extends EventTarget> = TargetedEvent< Target, WheelEvent >; export type TargetedPictureInPictureEvent<Target extends EventTarget> = TargetedEvent<Target, PictureInPictureEvent>; export type EventHandler<E extends TargetedEvent> = { bivarianceHack(event: E): void; }['bivarianceHack']; export type AnimationEventHandler<Target extends EventTarget> = EventHandler< TargetedAnimationEvent<Target> >; export type ClipboardEventHandler<Target extends EventTarget> = EventHandler< TargetedClipboardEvent<Target> >; export type CompositionEventHandler<Target extends EventTarget> = EventHandler<TargetedCompositionEvent<Target>>; export type DragEventHandler<Target extends EventTarget> = EventHandler< TargetedDragEvent<Target> >; export type FocusEventHandler<Target extends EventTarget> = EventHandler< TargetedFocusEvent<Target> >; export type GenericEventHandler<Target extends EventTarget> = EventHandler< TargetedEvent<Target> >; export type InputEventHandler<Target extends EventTarget> = EventHandler< TargetedInputEvent<Target> >; export type KeyboardEventHandler<Target extends EventTarget> = EventHandler< TargetedKeyboardEvent<Target> >; export type MouseEventHandler<Target extends EventTarget> = EventHandler< TargetedMouseEvent<Target> >; export type PointerEventHandler<Target extends EventTarget> = EventHandler< TargetedPointerEvent<Target> >; export type SubmitEventHandler<Target extends EventTarget> = EventHandler< TargetedSubmitEvent<Target> >; export type TouchEventHandler<Target extends EventTarget> = EventHandler< TargetedTouchEvent<Target> >; export type TransitionEventHandler<Target extends EventTarget> = EventHandler< TargetedTransitionEvent<Target> >; export type UIEventHandler<Target extends EventTarget> = EventHandler< TargetedUIEvent<Target> >; export type WheelEventHandler<Target extends EventTarget> = EventHandler< TargetedWheelEvent<Target> >; export type PictureInPictureEventHandler<Target extends EventTarget> = EventHandler<TargetedPictureInPictureEvent<Target>>; export interface DOMAttributes<Target extends EventTarget> extends PreactDOMAttributes { // Image Events onLoad?: GenericEventHandler<Target> | undefined; onLoadCapture?: GenericEventHandler<Target> | undefined; onError?: GenericEventHandler<Target> | undefined; onErrorCapture?: GenericEventHandler<Target> | undefined; // Clipboard Events onCopy?: ClipboardEventHandler<Target> | undefined; onCopyCapture?: ClipboardEventHandler<Target> | undefined; onCut?: ClipboardEventHandler<Target> | undefined; onCutCapture?: ClipboardEventHandler<Target> | undefined; onPaste?: ClipboardEventHandler<Target> | undefined; onPasteCapture?: ClipboardEventHandler<Target> | undefined; // Composition Events onCompositionEnd?: CompositionEventHandler<Target> | undefined; onCompositionEndCapture?: CompositionEventHandler<Target> | undefined; onCompositionStart?: CompositionEventHandler<Target> | undefined; onCompositionStartCapture?: CompositionEventHandler<Target> | undefined; onCompositionUpdate?: CompositionEventHandler<Target> | undefined; onCompositionUpdateCapture?: CompositionEventHandler<Target> | undefined; // Details Events onToggle?: GenericEventHandler<Target> | undefined; // Dialog Events onClose?: GenericEventHandler<Target> | undefined; onCancel?: GenericEventHandler<Target> | undefined; // Focus Events onFocus?: FocusEventHandler<Target> | undefined; onFocusCapture?: FocusEventHandler<Target> | undefined; onFocusIn?: FocusEventHandler<Target> | undefined; onFocusInCapture?: FocusEventHandler<Target> | undefined; onFocusOut?: FocusEventHandler<Target> | undefined; onFocusOutCapture?: FocusEventHandler<Target> | undefined; onBlur?: FocusEventHandler<Target> | undefined; onBlurCapture?: FocusEventHandler<Target> | undefined; // Form Events onChange?: GenericEventHandler<Target> | undefined; onChangeCapture?: GenericEventHandler<Target> | undefined; onInput?: InputEventHandler<Target> | undefined; onInputCapture?: InputEventHandler<Target> | undefined; onBeforeInput?: InputEventHandler<Target> | undefined; onBeforeInputCapture?: InputEventHandler<Target> | undefined; onSearch?: GenericEventHandler<Target> | undefined; onSearchCapture?: GenericEventHandler<Target> | undefined; onSubmit?: SubmitEventHandler<Target> | undefined; onSubmitCapture?: SubmitEventHandler<Target> | undefined; onInvalid?: GenericEventHandler<Target> | undefined; onInvalidCapture?: GenericEventHandler<Target> | undefined; onReset?: GenericEventHandler<Target> | undefined; onResetCapture?: GenericEventHandler<Target> | undefined; onFormData?: GenericEventHandler<Target> | undefined; onFormDataCapture?: GenericEventHandler<Target> | undefined; // Keyboard Events onKeyDown?: KeyboardEventHandler<Target> | undefined; onKeyDownCapture?: KeyboardEventHandler<Target> | undefined; onKeyPress?: KeyboardEventHandler<Target> | undefined; onKeyPressCapture?: KeyboardEventHandler<Target> | undefined; onKeyUp?: KeyboardEventHandler<Target> | undefined; onKeyUpCapture?: KeyboardEventHandler<Target> | undefined; // Media Events onAbort?: GenericEventHandler<Target> | undefined; onAbortCapture?: GenericEventHandler<Target> | undefined; onCanPlay?: GenericEventHandler<Target> | undefined; onCanPlayCapture?: GenericEventHandler<Target> | undefined; onCanPlayThrough?: GenericEventHandler<Target> | undefined; onCanPlayThroughCapture?: GenericEventHandler<Target> | undefined; onDurationChange?: GenericEventHandler<Target> | undefined; onDurationChangeCapture?: GenericEventHandler<Target> | undefined; onEmptied?: GenericEventHandler<Target> | undefined; onEmptiedCapture?: GenericEventHandler<Target> | undefined; onEncrypted?: GenericEventHandler<Target> | undefined; onEncryptedCapture?: GenericEventHandler<Target> | undefined; onEnded?: GenericEventHandler<Target> | undefined; onEndedCapture?: GenericEventHandler<Target> | undefined; onLoadedData?: GenericEventHandler<Target> | undefined; onLoadedDataCapture?: GenericEventHandler<Target> | undefined; onLoadedMetadata?: GenericEventHandler<Target> | undefined; onLoadedMetadataCapture?: GenericEventHandler<Target> | undefined; onLoadStart?: GenericEventHandler<Target> | undefined; onLoadStartCapture?: GenericEventHandler<Target> | undefined; onPause?: GenericEventHandler<Target> | undefined; onPauseCapture?: GenericEventHandler<Target> | undefined; onPlay?: GenericEventHandler<Target> | undefined; onPlayCapture?: GenericEventHandler<Target> | undefined; onPlaying?: GenericEventHandler<Target> | undefined; onPlayingCapture?: GenericEventHandler<Target> | undefined; onProgress?: GenericEventHandler<Target> | undefined; onProgressCapture?: GenericEventHandler<Target> | undefined; onRateChange?: GenericEventHandler<Target> | undefined; onRateChangeCapture?: GenericEventHandler<Target> | undefined; onSeeked?: GenericEventHandler<Target> | undefined; onSeekedCapture?: GenericEventHandler<Target> | undefined; onSeeking?: GenericEventHandler<Target> | undefined; onSeekingCapture?: GenericEventHandler<Target> | undefined; onStalled?: GenericEventHandler<Target> | undefined; onStalledCapture?: GenericEventHandler<Target> | undefined; onSuspend?: GenericEventHandler<Target> | undefined; onSuspendCapture?: GenericEventHandler<Target> | undefined; onTimeUpdate?: GenericEventHandler<Target> | undefined; onTimeUpdateCapture?: GenericEventHandler<Target> | undefined; onVolumeChange?: GenericEventHandler<Target> | undefined; onVolumeChangeCapture?: GenericEventHandler<Target> | undefined; onWaiting?: GenericEventHandler<Target> | undefined; onWaitingCapture?: GenericEventHandler<Target> | undefined; // MouseEvents onClick?: MouseEventHandler<Target> | undefined; onClickCapture?: MouseEventHandler<Target> | undefined; onContextMenu?: MouseEventHandler<Target> | undefined; onContextMenuCapture?: MouseEventHandler<Target> | undefined; onDblClick?: MouseEventHandler<Target> | undefined; onDblClickCapture?: MouseEventHandler<Target> | undefined; onDrag?: DragEventHandler<Target> | undefined; onDragCapture?: DragEventHandler<Target> | undefined; onDragEnd?: DragEventHandler<Target> | undefined; onDragEndCapture?: DragEventHandler<Target> | undefined; onDragEnter?: DragEventHandler<Target> | undefined; onDragEnterCapture?: DragEventHandler<Target> | undefined; onDragExit?: DragEventHandler<Target> | undefined; onDragExitCapture?: DragEventHandler<Target> | undefined; onDragLeave?: DragEventHandler<Target> | undefined; onDragLeaveCapture?: DragEventHandler<Target> | undefined; onDragOver?: DragEventHandler<Target> | undefined; onDragOverCapture?: DragEventHandler<Target> | undefined; onDragStart?: DragEventHandler<Target> | undefined; onDragStartCapture?: DragEventHandler<Target> | undefined; onDrop?: DragEventHandler<Target> | undefined; onDropCapture?: DragEventHandler<Target> | undefined; onMouseDown?: MouseEventHandler<Target> | undefined; onMouseDownCapture?: MouseEventHandler<Target> | undefined; onMouseEnter?: MouseEventHandler<Target> | undefined; onMouseEnterCapture?: MouseEventHandler<Target> | undefined; onMouseLeave?: MouseEventHandler<Target> | undefined; onMouseLeaveCapture?: MouseEventHandler<Target> | undefined; onMouseMove?: MouseEventHandler<Target> | undefined; onMouseMoveCapture?: MouseEventHandler<Target> | undefined; onMouseOut?: MouseEventHandler<Target> | undefined; onMouseOutCapture?: MouseEventHandler<Target> | undefined; onMouseOver?: MouseEventHandler<Target> | undefined; onMouseOverCapture?: MouseEventHandler<Target> | undefined; onMouseUp?: MouseEventHandler<Target> | undefined; onMouseUpCapture?: MouseEventHandler<Target> | undefined; // Selection Events onSelect?: GenericEventHandler<Target> | undefined; onSelectCapture?: GenericEventHandler<Target> | undefined; // Touch Events onTouchCancel?: TouchEventHandler<Target> | undefined; onTouchCancelCapture?: TouchEventHandler<Target> | undefined; onTouchEnd?: TouchEventHandler<Target> | undefined; onTouchEndCapture?: TouchEventHandler<Target> | undefined; onTouchMove?: TouchEventHandler<Target> | undefined; onTouchMoveCapture?: TouchEventHandler<Target> | undefined; onTouchStart?: TouchEventHandler<Target> | undefined; onTouchStartCapture?: TouchEventHandler<Target> | undefined; // Pointer Events onPointerOver?: PointerEventHandler<Target> | undefined; onPointerOverCapture?: PointerEventHandler<Target> | undefined; onPointerEnter?: PointerEventHandler<Target> | undefined; onPointerEnterCapture?: PointerEventHandler<Target> | undefined; onPointerDown?: PointerEventHandler<Target> | undefined; onPointerDownCapture?: PointerEventHandler<Target> | undefined; onPointerMove?: PointerEventHandler<Target> | undefined; onPointerMoveCapture?: PointerEventHandler<Target> | undefined; onPointerUp?: PointerEventHandler<Target> | undefined; onPointerUpCapture?: PointerEventHandler<Target> | undefined; onPointerCancel?: PointerEventHandler<Target> | undefined; onPointerCancelCapture?: PointerEventHandler<Target> | undefined; onPointerOut?: PointerEventHandler<Target> | undefined; onPointerOutCapture?: PointerEventHandler<Target> | undefined; onPointerLeave?: PointerEventHandler<Target> | undefined; onPointerLeaveCapture?: PointerEventHandler<Target> | undefined; onGotPointerCapture?: PointerEventHandler<Target> | undefined; onGotPointerCaptureCapture?: PointerEventHandler<Target> | undefined; onLostPointerCapture?: PointerEventHandler<Target> | undefined; onLostPointerCaptureCapture?: PointerEventHandler<Target> | undefined; // UI Events onScroll?: UIEventHandler<Target> | undefined; onScrollEnd?: UIEventHandler<Target> | undefined; onScrollCapture?: UIEventHandler<Target> | undefined; // Wheel Events onWheel?: WheelEventHandler<Target> | undefined; onWheelCapture?: WheelEventHandler<Target> | undefined; // Animation Events onAnimationStart?: AnimationEventHandler<Target> | undefined; onAnimationStartCapture?: AnimationEventHandler<Target> | undefined; onAnimationEnd?: AnimationEventHandler<Target> | undefined; onAnimationEndCapture?: AnimationEventHandler<Target> | undefined; onAnimationIteration?: AnimationEventHandler<Target> | undefined; onAnimationIterationCapture?: AnimationEventHandler<Target> | undefined; // Transition Events onTransitionCancel?: TransitionEventHandler<Target>; onTransitionCancelCapture?: TransitionEventHandler<Target>; onTransitionEnd?: TransitionEventHandler<Target>; onTransitionEndCapture?: TransitionEventHandler<Target>; onTransitionRun?: TransitionEventHandler<Target>; onTransitionRunCapture?: TransitionEventHandler<Target>; onTransitionStart?: TransitionEventHandler<Target>; onTransitionStartCapture?: TransitionEventHandler<Target>; // PictureInPicture Events onEnterPictureInPicture?: PictureInPictureEventHandler<Target>; onEnterPictureInPictureCapture?: PictureInPictureEventHandler<Target>; onLeavePictureInPicture?: PictureInPictureEventHandler<Target>; onLeavePictureInPictureCapture?: PictureInPictureEventHandler<Target>; onResize?: PictureInPictureEventHandler<Target>; onResizeCapture?: PictureInPictureEventHandler<Target>; } // All the WAI-ARIA 1.1 attributes from https://www.w3.org/TR/wai-aria-1.1/ export interface AriaAttributes { /** Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application. */ 'aria-activedescendant'?: Signalish<string | undefined>; /** Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute. */ 'aria-atomic'?: Signalish<Booleanish | undefined>; /** * Indicates whether inputting text could trigger display of one or more predictions of the user's intended value for an input and specifies how predictions would be * presented if they are made.