diff --git a/src/jsx.d.ts b/src/jsx.d.ts index 2d663b7ec8..1745599e3d 100644 --- a/src/jsx.d.ts +++ b/src/jsx.d.ts @@ -42,6 +42,24 @@ interface ToggleEventInit extends EventInit { // End TS >5.2 +/** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/API/CommandEvent) */ +interface CommandEvent extends Event { + /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/API/CommandEvent/source) */ + readonly source: Element | null; + /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/API/CommandEvent/command) */ + readonly command: string; +} + +declare var CommandEvent: { + prototype: CommandEvent; + new(type: string, eventInitDict?: CommandEventInit): CommandEvent; +}; + +interface CommandEventInit extends EventInit { + source: Element | null; + command: string; +} + export namespace JSXInternal { export type LibraryManagedAttributes = Component extends { defaultProps: infer Defaults; @@ -496,6 +514,8 @@ export namespace JSXInternal { TargetedEvent; export type TargetedClipboardEvent = TargetedEvent; + export type TargetedCommandEvent = + TargetedEvent; export type TargetedCompositionEvent = TargetedEvent; export type TargetedDragEvent = TargetedEvent< @@ -557,6 +577,8 @@ export namespace JSXInternal { export type ClipboardEventHandler = EventHandler< TargetedClipboardEvent >; + export type CommandEventHandler = + TargetedCommandEvent export type CompositionEventHandler = EventHandler>; export type DragEventHandler = EventHandler< @@ -828,6 +850,8 @@ export namespace JSXInternal { onLeavePictureInPictureCapture?: PictureInPictureEventHandler; onResize?: PictureInPictureEventHandler; onResizeCapture?: PictureInPictureEventHandler; + + onCommand?: CommandEventHandler } // All the WAI-ARIA 1.1 attributes from https://www.w3.org/TR/wai-aria-1.1/ @@ -1622,6 +1646,9 @@ export namespace JSXInternal { interface ButtonHTMLAttributes extends HTMLAttributes { + command?: Signalish; + commandfor?: Signalish; + commandFor?: Signalish; disabled?: Signalish; form?: Signalish; formaction?: Signalish;