Skip to content

Commit aceca81

Browse files
committed
wip: add typescript
1 parent 0bf6061 commit aceca81

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed

standalone.d.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import { SerializerCompiler } from './index'
2+
3+
export type RouteDefinition = {
4+
method: string,
5+
url: string,
6+
httpStatus: string,
7+
schema?: unknown,
8+
}
9+
10+
interface Option {
11+
readMode: Boolean,
12+
storeFunction?(opts: RouteDefinition, schemaSerializationCode: string): void,
13+
restoreFunction?(opts: RouteDefinition): void,
14+
}
15+
16+
export declare function StandaloneSerializer(Options): SerializerCompiler;

test/types/standalone.test.ts

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import { expectAssignable, expectType } from "tsd";
2+
3+
import StandaloneSerializer, { RouteDefinition } from "../../standalone";
4+
import { SerializerCompiler } from "../..";
5+
6+
const reader = StandaloneSerializer({
7+
readMode: true,
8+
restoreFunction: (route: RouteDefinition) => {
9+
expectAssignable<RouteDefinition>(route)
10+
},
11+
});
12+
expectType<SerializerCompiler>(reader);
13+
14+
const writer = StandaloneSerializer({
15+
readMode: false,
16+
storeFunction: (route: RouteDefinition, code: string) => {
17+
expectAssignable<RouteDefinition>(route)
18+
expectAssignable<string>(code)
19+
},
20+
});
21+
expectType<SerializerCompiler>(writer);

0 commit comments

Comments
 (0)