ember-keyboard icon indicating copy to clipboard operation
ember-keyboard copied to clipboard

Provide TypeScript types

Open simonihmig opened this issue 2 years ago • 3 comments

Would be great if the addon would ship with its own index.d.ts types! 😀

simonihmig avatar Sep 21 '21 18:09 simonihmig

Yes, please! I would also be open to authoring this addon in typescript.

lukemelia avatar Nov 19 '21 02:11 lukemelia

anyone have some local .d.ts file that we can paste in to the addon's directory? :sweat_smile:

NullVoxPopuli avatar Sep 06 '23 21:09 NullVoxPopuli

@NullVoxPopuli this is what I use currently

// types/ember-keyboard/helpers/on-key.d.ts

import Helper from '@ember/component/helper';

export default class OnKeyHelper extends Helper<{
  Args: {
    Positional: [keyCombo: string, callback: (event: KeyboardEvent) => void];
  };
  Return: void;
}> {}
// types/ember-keyboard/modifiers/on-key.d.ts

import Modifier from 'ember-modifier';

export default class OnKeyModifier extends Modifier<{
  Args: {
    Positional: [keyCombo: string, callback?: (event: KeyboardEvent) => void];
    Named: {
      activated?: boolean;
      event?: string;
      priority?: number;
      onlyWhenFocused?: boolean;
    };
  };
  Element: HTMLElement;
}> {}
// types/ember-keyboard/test-support/test-helpers.d.ts

export function keyDown(keyCombo: string): Promise<void>;
export function keyUp(keyCombo: string): Promise<void>;
export function keyPress(keyCombo: string): Promise<void>;

charlesfries avatar Jan 24 '24 00:01 charlesfries