forked from dosm-malaysia/aksara-front
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtypes.ts
99 lines (89 loc) · 1.87 KB
/
types.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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
import type { ChartOptions, ChartTypeRegistry } from "chart.js";
import { AnnotationPluginOptions } from "chartjs-plugin-annotation";
import type { NextPage } from "next";
import type { AppProps } from "next/app";
import type { ReactElement, ReactNode } from "react";
export type AppPropsLayout = AppProps & {
Component: Page;
};
export type Page = NextPage & {
layout?: (page: ReactNode) => ReactElement;
};
// CHART INTERFACE
export type ChartCrosshairOption<T extends keyof ChartTypeRegistry> = ChartOptions<T> & {
plugins: {
crosshair?:
| {
line: {
width?: number;
color?: string;
dashPattern?: [number, number];
};
zoom: {
enabled: boolean;
};
sync: {
enabled: boolean;
};
}
| false;
annotation?: AnnotationPluginOptions | false;
};
};
export type DownloadOption = {
key: string;
image: string | false | undefined;
title: ReactNode;
description: ReactNode;
icon: JSX.Element;
href: string | (() => void);
};
export type DownloadOptions = {
chart: DownloadOption[];
data: DownloadOption[];
};
export type ChoroplethColors =
| "BrBG"
| "PRGn"
| "PiYG"
| "PuOr"
| "RdBu"
| "RdGy"
| "RdYlBu"
| "RdYlGn"
| "spectral"
| "blues"
| "greens"
| "greys"
| "oranges"
| "purples"
| "reds"
| "BuGn"
| "BuPu"
| "GnBu"
| "OrRd"
| "PuBuGn"
| "PuBu"
| "PuRd"
| "RdPu"
| "YlGnBu"
| "YlGn"
| "YlOrBr"
| "YlOrRd";
export interface AnalyticsEvent {
action: string;
category: string;
label: string;
value: string;
}
/*************************** MIXPANEL ***************************** */
export type EventType =
| "file_download"
| "page_view"
| "change_language"
| "select_dropdown"
| "code_copy";
export type MixpanelBase = {
project_id: string | number;
event: EventType;
};