-
Notifications
You must be signed in to change notification settings - Fork 31
Expand file tree
/
Copy pathtypes.ts
More file actions
88 lines (75 loc) · 1.83 KB
/
Copy pathtypes.ts
File metadata and controls
88 lines (75 loc) · 1.83 KB
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
export type ReportModes = 'View' | 'Edit' | 'Create';
export type EmbedType = 'report' | 'dashboard' | 'tile' | 'visual';
export type TokenType = 'Aad' | 'Embed';
export type Permissions =
| 'Read'
| 'ReadWrite'
| 'Copy'
| 'Create'
| 'All';
export type PageView = 'fitToWidth' | 'oneColumn' | 'actualSize';
export interface IError {
message: string;
detailedMessage?: string;
errorCode?: string;
}
interface CommonProps {
embedType: EmbedType;
tokenType: TokenType;
accessToken: string;
embedUrl: string;
embedId?: string;
style?: any;
onLoad?: Function;
}
export interface TileProps extends CommonProps {
dashboardId: string;
onClick?: Function;
}
export interface DashboardProps extends CommonProps {
pageView: PageView;
onTileClicked?: Function;
}
export interface ReportProps extends CommonProps {
groupId?: string;
permissions: Permissions;
reportMode: ReportModes;
pageName?: string;
extraSettings?: any;
datasetId?: string;
onRender?: Function;
onError?: Function;
onButtonClicked?: Function;
onSelectData?: Function;
onPageChange?: Function;
onCommandTriggered?: Function;
onSave?: Function;
}
export interface ReportVisualProps extends CommonProps {
pageName: string;
visualName: string;
onRender?: Function;
onSelectData?: Function;
}
export interface Config {
type: EmbedType;
tokenType: TokenType;
accessToken: string;
embedUrl: string;
pageName: string;
groupId: string;
visualName: string;
extraSettings: any;
permissions: Permissions;
id: string;
reportMode: ReportModes;
datasetId: string;
pageView: PageView;
dashboardId: string;
}
export type ConfigProps = ReportProps | DashboardProps | TileProps | ReportVisualProps;
export interface Embed {
config: Config;
performOnEmbed: (report: any, reportRef?: any) => void;
style: any;
}