-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.d.ts
44 lines (28 loc) · 1.09 KB
/
app.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
interface Array<T> {
filter(predicate: BooleanConstructor): Array<NonNullable<T>>;
}
type DataUrlString = string;
type DistributiveOmit<T, K extends PropertyType> = T extends unknown ? Omit<T, K> : never;
type DistributivePick<T, K extends PropertyType> = T extends unknown ? Pick<T, K> : never;
type IsoDateString = string;
type IsoDateTimestamp = number;
type OptionalKeys<T extends object, K extends keyof T = keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
type Primitive = boolean | number | string;
type PageParamsInput = {
[K: string]: Array<Primitive> | Primitive;
};
type PageParams<T extends PageParamsInput> = {
[K in keyof T as string extends K ? never : K]: Exclude<T[K], undefined> extends Primitive
? string
: Array<string>;
};
type RequiredKeys<T extends object, K extends keyof T = keyof T> = Omit<T, K> &
Required<Pick<T, K>>;
type UriString = string;
type UrlString = string;
type Nullable<T> = T | null | undefined;
declare module '*.svg' {
import type { StaticImageData } from 'next/future/image';
const content: StaticImageData;
export default content;
}