Skip to content

Commit 8ae4f02

Browse files
committed
Add typings
1 parent b80507d commit 8ae4f02

File tree

5 files changed

+65
-0
lines changed

5 files changed

+65
-0
lines changed

cjs/index.d.ts

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
import hyper from "..";
2+
export * from '..';
3+
export default hyper;

esm/index.d.ts

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
import hyper from "..";
2+
export * from '..';
3+
export default hyper;

index.d.ts

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
type TemplateFunction<T> = (template: TemplateStringsArray, ...values: any[]) => T;
2+
type HyperTemplateFunction = TemplateFunction<any>;
3+
4+
export declare class Component<T = {}> {
5+
handleEvent(e: Event): void;
6+
html: HyperTemplateFunction;
7+
svg: HyperTemplateFunction;
8+
state: T;
9+
defaultState: T;
10+
setState(state: Partial<T> | ((this: this, state: T) => Partial<T>)): void;
11+
}
12+
13+
export declare function bind<T extends Element>(element: T): TemplateFunction<T>;
14+
15+
export declare function define(intent: string, callback: Function): void;
16+
17+
export declare function diff(
18+
parentNode: Node,
19+
currentNodes: Node[],
20+
futureNodes: Node[],
21+
getNode?: ((item: Node) => Node) | null,
22+
beforeNode?: Node | null,
23+
): Node[];
24+
25+
export declare function wire(obj?: object | null, type?: string): HyperTemplateFunction;
26+
27+
export declare const hyper: {
28+
Component: typeof Component;
29+
bind: typeof bind;
30+
define: typeof define;
31+
diff: typeof diff;
32+
hyper: typeof hyper;
33+
wire: typeof wire;
34+
35+
// hyper(null, 'html')`HTML`
36+
(obj: null | undefined, type?: string): HyperTemplateFunction;
37+
38+
// hyper('html')`HTML`
39+
(type: string): HyperTemplateFunction;
40+
41+
// hyper(element)`HTML`
42+
<T extends Element>(element: T): TemplateFunction<T>;
43+
44+
// hyper`HTML`
45+
(template: TemplateStringsArray, ...values: any[]): any;
46+
47+
// hyper(obj, 'html:id')`HTML`
48+
// hyper(obj)`HTML`
49+
(obj: object, type_id?: string): HyperTemplateFunction;
50+
51+
// hyper()`HTML`
52+
(): HyperTemplateFunction;
53+
};
54+
55+
export default hyper;

package.json

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
"browser": "min.js",
77
"main": "cjs/index.js",
88
"module": "esm/index.js",
9+
"types": "index.d.ts",
910
"scripts": {
1011
"add-domdiff": "echo '/* AUTOMATICALLY IMPORTED, DO NOT MODIFY */' > esm/shared/domdiff.js && cat node_modules/domdiff/esm/index.js >> esm/shared/domdiff.js",
1112
"build": "npm run cjs && npm run max && npm run min && npm run ie && npm test && npm run size",

umd.d.ts

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
import hyper from '.';
2+
export * from '.';
3+
export default hyper;

0 commit comments

Comments
 (0)