refactor(types): use typed SvelteComponent interface for typing components

This commit is contained in:
Eric Liu 2020-11-25 15:29:55 -08:00
commit dab82d3479
156 changed files with 1379 additions and 1667 deletions

View file

@ -1,4 +1,5 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderProps extends svelte.JSX.HTMLAttributes<HTMLElementTagNameMap["a"]> {
/**
@ -48,14 +49,8 @@ export interface HeaderProps extends svelte.JSX.HTMLAttributes<HTMLElementTagNam
ref?: null | HTMLAnchorElement;
}
export default class Header {
$$prop_def: HeaderProps;
$$slot_def: {
default: {};
platform: {};
["skip-to-content"]: {};
};
$on(eventname: "click", cb: (event: WindowEventMap["click"]) => void): () => void;
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class Header extends SvelteComponent<
HeaderProps,
{ click: WindowEventMap["click"] },
{ default: {}; platform: {}; ["skip-to-content"]: {} }
> {}

View file

@ -1,4 +1,5 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderActionProps extends svelte.JSX.HTMLAttributes<HTMLElementTagNameMap["button"]> {
/**
@ -25,14 +26,8 @@ export interface HeaderActionProps extends svelte.JSX.HTMLAttributes<HTMLElement
ref?: null | HTMLButtonElement;
}
export default class HeaderAction {
$$prop_def: HeaderActionProps;
$$slot_def: {
default: {};
text: {};
};
$on(eventname: "click", cb: (event: WindowEventMap["click"]) => void): () => void;
$on(eventname: "close", cb: (event: CustomEvent<any>) => void): () => void;
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class HeaderAction extends SvelteComponent<
HeaderActionProps,
{ click: WindowEventMap["click"]; close: CustomEvent<any> },
{ default: {}; text: {} }
> {}

View file

@ -1,4 +1,5 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderActionLinkProps extends svelte.JSX.HTMLAttributes<HTMLElementTagNameMap["a"]> {
/**
@ -24,9 +25,4 @@ export interface HeaderActionLinkProps extends svelte.JSX.HTMLAttributes<HTMLEle
ref?: null | HTMLAnchorElement;
}
export default class HeaderActionLink {
$$prop_def: HeaderActionLinkProps;
$$slot_def: {};
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class HeaderActionLink extends SvelteComponent<HeaderActionLinkProps, {}, {}> {}

View file

@ -1,4 +1,5 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderActionSearchProps {
/**
@ -8,12 +9,12 @@ export interface HeaderActionSearchProps {
searchIsActive?: boolean;
}
export default class HeaderActionSearch {
$$prop_def: HeaderActionSearchProps;
$$slot_def: {};
$on(eventname: "inputSearch", cb: (event: CustomEvent<{ action: "search"; textInput: string }>) => void): () => void;
$on(eventname: "focusInputSearch", cb: (event: CustomEvent<any>) => void): () => void;
$on(eventname: "focusOutInputSearch", cb: (event: CustomEvent<any>) => void): () => void;
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class HeaderActionSearch extends SvelteComponent<
HeaderActionSearchProps,
{
inputSearch: CustomEvent<{ action: "search"; textInput: string }>;
focusInputSearch: CustomEvent<any>;
focusOutInputSearch: CustomEvent<any>;
},
{}
> {}

View file

@ -1,4 +1,5 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderNavProps extends svelte.JSX.HTMLAttributes<HTMLElementTagNameMap["nav"]> {
/**
@ -7,11 +8,4 @@ export interface HeaderNavProps extends svelte.JSX.HTMLAttributes<HTMLElementTag
ariaLabel?: string;
}
export default class HeaderNav {
$$prop_def: HeaderNavProps;
$$slot_def: {
default: {};
};
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class HeaderNav extends SvelteComponent<HeaderNavProps, {}, { default: {} }> {}

View file

@ -1,4 +1,5 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderNavItemProps extends svelte.JSX.HTMLAttributes<HTMLElementTagNameMap["a"]> {
/**
@ -18,17 +19,17 @@ export interface HeaderNavItemProps extends svelte.JSX.HTMLAttributes<HTMLElemen
ref?: null | HTMLAnchorElement;
}
export default class HeaderNavItem {
$$prop_def: HeaderNavItemProps;
$$slot_def: {};
$on(eventname: "click", cb: (event: WindowEventMap["click"]) => void): () => void;
$on(eventname: "mouseover", cb: (event: WindowEventMap["mouseover"]) => void): () => void;
$on(eventname: "mouseenter", cb: (event: WindowEventMap["mouseenter"]) => void): () => void;
$on(eventname: "mouseleave", cb: (event: WindowEventMap["mouseleave"]) => void): () => void;
$on(eventname: "keyup", cb: (event: WindowEventMap["keyup"]) => void): () => void;
$on(eventname: "keydown", cb: (event: WindowEventMap["keydown"]) => void): () => void;
$on(eventname: "focus", cb: (event: WindowEventMap["focus"]) => void): () => void;
$on(eventname: "blur", cb: (event: WindowEventMap["blur"]) => void): () => void;
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class HeaderNavItem extends SvelteComponent<
HeaderNavItemProps,
{
click: WindowEventMap["click"];
mouseover: WindowEventMap["mouseover"];
mouseenter: WindowEventMap["mouseenter"];
mouseleave: WindowEventMap["mouseleave"];
keyup: WindowEventMap["keyup"];
keydown: WindowEventMap["keydown"];
focus: WindowEventMap["focus"];
blur: WindowEventMap["blur"];
},
{}
> {}

View file

@ -1,4 +1,5 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderNavMenuProps extends svelte.JSX.HTMLAttributes<HTMLElementTagNameMap["a"]> {
/**
@ -31,19 +32,17 @@ export interface HeaderNavMenuProps extends svelte.JSX.HTMLAttributes<HTMLElemen
iconDescription?: string;
}
export default class HeaderNavMenu {
$$prop_def: HeaderNavMenuProps;
$$slot_def: {
default: {};
};
$on(eventname: "keydown", cb: (event: WindowEventMap["keydown"]) => void): () => void;
$on(eventname: "click", cb: (event: WindowEventMap["click"]) => void): () => void;
$on(eventname: "mouseover", cb: (event: WindowEventMap["mouseover"]) => void): () => void;
$on(eventname: "mouseenter", cb: (event: WindowEventMap["mouseenter"]) => void): () => void;
$on(eventname: "mouseleave", cb: (event: WindowEventMap["mouseleave"]) => void): () => void;
$on(eventname: "keyup", cb: (event: WindowEventMap["keyup"]) => void): () => void;
$on(eventname: "focus", cb: (event: WindowEventMap["focus"]) => void): () => void;
$on(eventname: "blur", cb: (event: WindowEventMap["blur"]) => void): () => void;
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class HeaderNavMenu extends SvelteComponent<
HeaderNavMenuProps,
{
keydown: WindowEventMap["keydown"];
click: WindowEventMap["click"];
mouseover: WindowEventMap["mouseover"];
mouseenter: WindowEventMap["mouseenter"];
mouseleave: WindowEventMap["mouseleave"];
keyup: WindowEventMap["keyup"];
focus: WindowEventMap["focus"];
blur: WindowEventMap["blur"];
},
{ default: {} }
> {}

View file

@ -1,12 +1,6 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderPanelDividerProps {}
export default class HeaderPanelDivider {
$$prop_def: HeaderPanelDividerProps;
$$slot_def: {
default: {};
};
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class HeaderPanelDivider extends SvelteComponent<HeaderPanelDividerProps, {}, { default: {} }> {}

View file

@ -1,4 +1,5 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderPanelLinkProps extends svelte.JSX.HTMLAttributes<HTMLElementTagNameMap["a"]> {
/**
@ -13,12 +14,8 @@ export interface HeaderPanelLinkProps extends svelte.JSX.HTMLAttributes<HTMLElem
ref?: null | HTMLAnchorElement;
}
export default class HeaderPanelLink {
$$prop_def: HeaderPanelLinkProps;
$$slot_def: {
default: {};
};
$on(eventname: "click", cb: (event: WindowEventMap["click"]) => void): () => void;
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class HeaderPanelLink extends SvelteComponent<
HeaderPanelLinkProps,
{ click: WindowEventMap["click"] },
{ default: {} }
> {}

View file

@ -1,12 +1,6 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderPanelLinksProps {}
export default class HeaderPanelLinks {
$$prop_def: HeaderPanelLinksProps;
$$slot_def: {
default: {};
};
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class HeaderPanelLinks extends SvelteComponent<HeaderPanelLinksProps, {}, { default: {} }> {}

View file

@ -1,12 +1,6 @@
/// <reference types="svelte" />
import { SvelteComponent } from "svelte";
export interface HeaderUtilitiesProps {}
export default class HeaderUtilities {
$$prop_def: HeaderUtilitiesProps;
$$slot_def: {
default: {};
};
$on(eventname: string, cb: (event: Event) => void): () => void;
}
export default class HeaderUtilities extends SvelteComponent<HeaderUtilitiesProps, {}, { default: {} }> {}