@crowbartools/firebot-types 5.67.0-alpha11 → 5.67.0-alpha13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/backend/events/filters/builtin/firebot/index.d.ts +1 -1
- package/backend/events/filters/builtin/firebot/new-currency-amount.d.ts +1 -1
- package/backend/events/filters/builtin/firebot/new-view-time.d.ts +1 -1
- package/backend/events/filters/builtin/firebot/previous-currency-amount.d.ts +1 -1
- package/backend/events/filters/builtin/firebot/previous-view-time.d.ts +1 -1
- package/backend/events/filters/builtin/index.d.ts +1 -1
- package/backend/events/filters/builtin/third-party/donation-amount.d.ts +1 -1
- package/backend/events/filters/builtin/third-party/index.d.ts +1 -1
- package/backend/events/filters/builtin/twitch/bits-badge-tier.d.ts +1 -1
- package/backend/events/filters/builtin/twitch/chat-mode-duration.d.ts +1 -1
- package/backend/events/filters/builtin/twitch/cheer-bits-amount.d.ts +1 -1
- package/backend/events/filters/builtin/twitch/gift-count.d.ts +1 -1
- package/backend/events/filters/builtin/twitch/gift-duration.d.ts +1 -1
- package/backend/events/filters/builtin/twitch/index.d.ts +1 -1
- package/backend/events/filters/builtin/twitch/lifetime-gift-count.d.ts +1 -1
- package/backend/events/filters/builtin/twitch/raid-viewer-count.d.ts +1 -1
- package/backend/events/filters/builtin/twitch/sub-months.d.ts +1 -1
- package/backend/events/filters/builtin/twitch/watch-streak-count.d.ts +1 -1
- package/backend/integrations/builtin/streamloots/filters/chest-quantity.d.ts +1 -1
- package/backend/overlay-widgets/overlay-widgets-manager.d.ts +1 -1
- package/backend/ranks/rank-ladder-helper.d.ts +1 -1
- package/backend/restrictions/builtin/index.d.ts +1 -1
- package/backend/scripts/script-api/namespaces/http-server.d.ts +2 -0
- package/index.d.ts +1 -1
- package/package.json +1 -1
- package/types/accounts.d.ts +1 -2
- package/types/auth.d.ts +1 -10
- package/types/channel-rewards.d.ts +1 -5
- package/types/chat.d.ts +9 -31
- package/types/commands.d.ts +11 -31
- package/types/counters.d.ts +1 -2
- package/types/currency.d.ts +1 -3
- package/types/discord.d.ts +0 -1
- package/types/effects.d.ts +9 -42
- package/types/events.d.ts +3 -36
- package/types/expressionish.d.ts +2 -22
- package/types/games.d.ts +1 -4
- package/types/hotkeys.d.ts +1 -3
- package/types/http-server.d.ts +2 -14
- package/types/icons.d.ts +1 -1
- package/types/import.d.ts +7 -34
- package/types/index.d.ts +1 -1
- package/types/integrations.d.ts +41 -65
- package/types/moderation.d.ts +1 -8
- package/types/modules/event-manager.d.ts +2 -10
- package/types/modules/frontend-communicator.d.ts +5 -21
- package/types/modules/index.d.ts +1 -1
- package/types/notifications.d.ts +1 -6
- package/types/overlay-widgets.d.ts +11 -34
- package/types/parameters.d.ts +26 -182
- package/types/plugins.d.ts +18 -58
- package/types/power-ups.d.ts +0 -2
- package/types/pronouns.d.ts +1 -2
- package/types/quick-actions.d.ts +1 -3
- package/types/quotes.d.ts +1 -3
- package/types/ranks.d.ts +1 -2
- package/types/restrictions.d.ts +7 -24
- package/types/roles.d.ts +1 -3
- package/types/script-api.d.ts +14 -49
- package/types/settings.d.ts +7 -7
- package/types/setups.d.ts +2 -4
- package/types/sort-tags.d.ts +1 -1
- package/types/timers.d.ts +1 -5
- package/types/triggers.d.ts +12 -23
- package/types/ui/angular.d.ts +5 -26
- package/types/ui/effect-helper-service.d.ts +1 -2
- package/types/ui/effect-queues-service.d.ts +8 -4
- package/types/ui/firebot-root-scope.d.ts +0 -1
- package/types/ui/index.d.ts +1 -1
- package/types/ui/modal-factory.d.ts +5 -13
- package/types/ui/modal-service.d.ts +3 -2
- package/types/ui/ng-toast.d.ts +5 -1
- package/types/ui/object-copy-helper.d.ts +0 -1
- package/types/ui/platform-service.d.ts +1 -1
- package/types/ui/preset-effect-lists-service.d.ts +1 -6
- package/types/ui/settings-service.d.ts +0 -1
- package/types/ui-extensions.d.ts +9 -16
- package/types/util-types.d.ts +7 -33
- package/types/variable-macros.d.ts +1 -1
- package/types/variables.d.ts +5 -19
- package/types/viewers.d.ts +1 -3
- package/types/webhooks.d.ts +1 -1
- package/types/websocket.d.ts +8 -46
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import type { FirebotParameterArray, FontOptions } from "./parameters";
|
|
2
2
|
import type { Awaitable } from "./util-types";
|
|
3
|
-
|
|
4
3
|
export type Position = {
|
|
5
4
|
x: number;
|
|
6
5
|
y: number;
|
|
7
6
|
width: number;
|
|
8
7
|
height: number;
|
|
9
8
|
};
|
|
10
|
-
|
|
11
9
|
export type Animation = {
|
|
12
10
|
/**
|
|
13
11
|
* CSS class name for the animation (e.g., from Animate.css)
|
|
@@ -18,13 +16,11 @@ export type Animation = {
|
|
|
18
16
|
*/
|
|
19
17
|
duration?: number;
|
|
20
18
|
};
|
|
21
|
-
|
|
22
19
|
type WidgetEvent<Settings, State> = OverlayWidgetConfig<Settings, State> & {
|
|
23
20
|
previewMode: boolean;
|
|
24
21
|
previousState?: State;
|
|
25
22
|
persisted?: boolean;
|
|
26
23
|
};
|
|
27
|
-
|
|
28
24
|
export type WidgetEventResult<State> = {
|
|
29
25
|
newState?: State | null;
|
|
30
26
|
/**
|
|
@@ -33,26 +29,16 @@ export type WidgetEventResult<State> = {
|
|
|
33
29
|
*/
|
|
34
30
|
persistState?: boolean;
|
|
35
31
|
};
|
|
36
|
-
|
|
37
32
|
export type WidgetEventHandler<Settings, State, Return = WidgetEventResult<State>> = (event: WidgetEvent<Settings, State>) => Awaitable<Return | undefined>;
|
|
38
|
-
|
|
39
|
-
export type WidgetUIAction<
|
|
40
|
-
Settings extends Record<string, unknown> = Record<string, unknown>,
|
|
41
|
-
State = Record<string, unknown>
|
|
42
|
-
> = {
|
|
33
|
+
export type WidgetUIAction<Settings extends Record<string, unknown> = Record<string, unknown>, State = Record<string, unknown>> = {
|
|
43
34
|
id: string;
|
|
44
35
|
label: string;
|
|
45
36
|
icon: string;
|
|
46
|
-
|
|
47
37
|
click: (config: OverlayWidgetConfig<Settings, State>) => Awaitable<{
|
|
48
38
|
newState?: State | null;
|
|
49
39
|
} | void>;
|
|
50
40
|
};
|
|
51
|
-
|
|
52
|
-
export type OverlayWidgetType<
|
|
53
|
-
Settings extends Record<string, unknown> = Record<string, unknown>,
|
|
54
|
-
State = Record<string, unknown>
|
|
55
|
-
> = {
|
|
41
|
+
export type OverlayWidgetType<Settings extends Record<string, unknown> = Record<string, unknown>, State = Record<string, unknown>> = {
|
|
56
42
|
id: string;
|
|
57
43
|
name: string;
|
|
58
44
|
description: string;
|
|
@@ -88,12 +74,10 @@ export type OverlayWidgetType<
|
|
|
88
74
|
* Settings allow the user to customize the widget instance (e.g., font to use, colors, etc.)
|
|
89
75
|
*/
|
|
90
76
|
settingsSchema?: FirebotParameterArray<Settings>;
|
|
91
|
-
|
|
92
77
|
/**
|
|
93
78
|
* Array of setting keys that cannot be edited in the Update Overlay Widget Settings effect.
|
|
94
79
|
*/
|
|
95
80
|
nonEditableSettings?: (keyof Settings)[];
|
|
96
|
-
|
|
97
81
|
/**
|
|
98
82
|
* Initial state for the widget instance (e.g., current count for a counter widget)
|
|
99
83
|
*/
|
|
@@ -110,7 +94,6 @@ export type OverlayWidgetType<
|
|
|
110
94
|
* State that is used when the widget is shown in live preview mode.
|
|
111
95
|
*/
|
|
112
96
|
livePreviewState?: State;
|
|
113
|
-
|
|
114
97
|
/**
|
|
115
98
|
* Array of setting keys that reference local resource paths.
|
|
116
99
|
* These properties will be automatically converted to resource tokens when sent to the overlay,
|
|
@@ -121,7 +104,6 @@ export type OverlayWidgetType<
|
|
|
121
104
|
* This is shown in the overlay widget list to give the user a quick overview of the widget's state.
|
|
122
105
|
* If null or undefined, no state display is shown.
|
|
123
106
|
*/
|
|
124
|
-
|
|
125
107
|
stateDisplay?: (config: OverlayWidgetConfig<Settings, State>) => string | null;
|
|
126
108
|
/**
|
|
127
109
|
* Actions are buttons shown in the overlay widget list for each widget instance.
|
|
@@ -154,10 +136,12 @@ export type OverlayWidgetType<
|
|
|
154
136
|
overlayExtension: {
|
|
155
137
|
dependencies?: {
|
|
156
138
|
css?: string[];
|
|
157
|
-
js?: Array<string | {
|
|
139
|
+
js?: Array<string | {
|
|
140
|
+
module: boolean;
|
|
141
|
+
url: string;
|
|
142
|
+
}>;
|
|
158
143
|
globalStyles?: string;
|
|
159
144
|
};
|
|
160
|
-
|
|
161
145
|
eventHandler: (event: WidgetOverlayEvent, utils: IOverlayWidgetEventUtils) => void;
|
|
162
146
|
/**
|
|
163
147
|
* Called when the overlay is loaded. Can be async.
|
|
@@ -165,8 +149,7 @@ export type OverlayWidgetType<
|
|
|
165
149
|
onInitialLoad?: (utils: IOverlayWidgetInitUtils) => Awaitable<void>;
|
|
166
150
|
};
|
|
167
151
|
};
|
|
168
|
-
|
|
169
|
-
type OverlayWidgetConfig<Settings = Record<string, unknown>, State = Record<string, unknown>> = {
|
|
152
|
+
export type OverlayWidgetConfig<Settings = Record<string, unknown>, State = Record<string, unknown>> = {
|
|
170
153
|
id: string;
|
|
171
154
|
name: string;
|
|
172
155
|
type: string;
|
|
@@ -187,7 +170,6 @@ type OverlayWidgetConfig<Settings = Record<string, unknown>, State = Record<stri
|
|
|
187
170
|
settings: Settings;
|
|
188
171
|
state?: State;
|
|
189
172
|
};
|
|
190
|
-
|
|
191
173
|
export type WidgetOverlayEvent<Settings = Record<string, unknown>, State = Record<string, unknown>> = {
|
|
192
174
|
name: "show" | "settings-update" | "state-update" | "message" | "remove";
|
|
193
175
|
data: {
|
|
@@ -208,7 +190,6 @@ export type WidgetOverlayEvent<Settings = Record<string, unknown>, State = Recor
|
|
|
208
190
|
messageData?: unknown;
|
|
209
191
|
};
|
|
210
192
|
};
|
|
211
|
-
|
|
212
193
|
/**
|
|
213
194
|
* Utility functions for managing overlay widgets. These functions can used within the overlayExtension.eventHandler
|
|
214
195
|
*/
|
|
@@ -222,19 +203,15 @@ export interface IOverlayWidgetEventUtils {
|
|
|
222
203
|
handleOverlayEvent(generateWidgetHtml: (widgetConfig: WidgetOverlayEvent["data"]["widgetConfig"]) => string, updateOnMessage?: boolean): void;
|
|
223
204
|
getWidgetPositionStyle(position?: Position): string;
|
|
224
205
|
getWidgetContainerElement(): HTMLElement | null;
|
|
225
|
-
initializeWidget(
|
|
226
|
-
|
|
227
|
-
): void;
|
|
228
|
-
updateWidgetContent(
|
|
229
|
-
newHtml: string,
|
|
230
|
-
): void;
|
|
206
|
+
initializeWidget(html: string): void;
|
|
207
|
+
updateWidgetContent(newHtml: string): void;
|
|
231
208
|
updateWidgetPosition(): void;
|
|
232
209
|
removeWidget(): void;
|
|
233
210
|
stylesToString(styles: Record<string, string | number | undefined>): string;
|
|
234
211
|
getFontOptionsStyles(fontOptions?: FontOptions): Record<string, string | number | undefined>;
|
|
235
212
|
sendMessageToFirebot(messageName: string, messageData?: unknown): void;
|
|
236
213
|
}
|
|
237
|
-
|
|
238
214
|
export interface IOverlayWidgetInitUtils {
|
|
239
215
|
getWidgetContainerElements(): NodeListOf<HTMLElement>;
|
|
240
|
-
}
|
|
216
|
+
}
|
|
217
|
+
export {};
|
package/types/parameters.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { EffectList } from "./effects";
|
|
2
2
|
import type { Animation } from "./overlay-widgets";
|
|
3
|
-
|
|
4
3
|
export type BaseParameter = {
|
|
5
4
|
/**
|
|
6
5
|
* The title of the parameter
|
|
@@ -28,23 +27,19 @@ export type BaseParameter = {
|
|
|
28
27
|
};
|
|
29
28
|
default?: unknown;
|
|
30
29
|
};
|
|
31
|
-
|
|
32
30
|
export type StringParameter = BaseParameter & {
|
|
33
31
|
type: "string";
|
|
34
32
|
useTextArea?: boolean;
|
|
35
33
|
default: string;
|
|
36
34
|
};
|
|
37
|
-
|
|
38
35
|
export type PasswordParameter = BaseParameter & {
|
|
39
36
|
type: "password";
|
|
40
37
|
default: string;
|
|
41
38
|
};
|
|
42
|
-
|
|
43
39
|
export type BooleanParameter = BaseParameter & {
|
|
44
40
|
type: "boolean";
|
|
45
41
|
default: boolean;
|
|
46
42
|
};
|
|
47
|
-
|
|
48
43
|
export type NumberParameter = BaseParameter & {
|
|
49
44
|
type: "number";
|
|
50
45
|
placeholder?: string;
|
|
@@ -54,7 +49,6 @@ export type NumberParameter = BaseParameter & {
|
|
|
54
49
|
max?: number;
|
|
55
50
|
};
|
|
56
51
|
};
|
|
57
|
-
|
|
58
52
|
export type DateTimeParameter = BaseParameter & {
|
|
59
53
|
type: "date-time";
|
|
60
54
|
default?: string;
|
|
@@ -62,7 +56,6 @@ export type DateTimeParameter = BaseParameter & {
|
|
|
62
56
|
futureOnly?: boolean;
|
|
63
57
|
};
|
|
64
58
|
};
|
|
65
|
-
|
|
66
59
|
export type EnumParameter<G = string | number> = BaseParameter & {
|
|
67
60
|
type: "enum";
|
|
68
61
|
options: Array<G>;
|
|
@@ -73,7 +66,6 @@ export type EnumParameter<G = string | number> = BaseParameter & {
|
|
|
73
66
|
*/
|
|
74
67
|
placeholder?: string;
|
|
75
68
|
};
|
|
76
|
-
|
|
77
69
|
export type FilepathParameter = BaseParameter & {
|
|
78
70
|
type: "filepath";
|
|
79
71
|
fileOptions?: {
|
|
@@ -86,25 +78,20 @@ export type FilepathParameter = BaseParameter & {
|
|
|
86
78
|
buttonLabel: string;
|
|
87
79
|
};
|
|
88
80
|
};
|
|
89
|
-
|
|
90
81
|
export type EffectListParameter = BaseParameter & {
|
|
91
82
|
type: "effectlist";
|
|
92
83
|
};
|
|
93
|
-
|
|
94
84
|
export type DiscordChannelWebhookParameter = BaseParameter & {
|
|
95
85
|
type: "discord-channel-webhooks";
|
|
96
86
|
};
|
|
97
|
-
|
|
98
87
|
export type CurrencySelectParameter = BaseParameter & {
|
|
99
88
|
type: "currency-select";
|
|
100
89
|
default?: string;
|
|
101
90
|
};
|
|
102
|
-
|
|
103
91
|
export type ChatterSelectParameter = BaseParameter & {
|
|
104
92
|
type: "chatter-select";
|
|
105
93
|
default?: "Bot" | "Streamer";
|
|
106
94
|
};
|
|
107
|
-
|
|
108
95
|
export type EditableListParameter = BaseParameter & {
|
|
109
96
|
type: "editable-list";
|
|
110
97
|
default?: string[];
|
|
@@ -116,10 +103,7 @@ export type EditableListParameter = BaseParameter & {
|
|
|
116
103
|
noneAddedText: string;
|
|
117
104
|
};
|
|
118
105
|
};
|
|
119
|
-
|
|
120
|
-
export type MultiselectParameter<
|
|
121
|
-
T extends string | number = string | number
|
|
122
|
-
> = BaseParameter & {
|
|
106
|
+
export type MultiselectParameter<T extends string | number = string | number> = BaseParameter & {
|
|
123
107
|
type: "multiselect";
|
|
124
108
|
default?: T[];
|
|
125
109
|
settings: {
|
|
@@ -129,7 +113,6 @@ export type MultiselectParameter<
|
|
|
129
113
|
}>;
|
|
130
114
|
};
|
|
131
115
|
};
|
|
132
|
-
|
|
133
116
|
export type RolePercentageParameterValue = {
|
|
134
117
|
basePercent: number;
|
|
135
118
|
roles: Array<{
|
|
@@ -137,12 +120,10 @@ export type RolePercentageParameterValue = {
|
|
|
137
120
|
percent: number;
|
|
138
121
|
}>;
|
|
139
122
|
};
|
|
140
|
-
|
|
141
123
|
export type RolePercentagesParameter = BaseParameter & {
|
|
142
124
|
type: "role-percentages";
|
|
143
125
|
default?: RolePercentageParameterValue;
|
|
144
126
|
};
|
|
145
|
-
|
|
146
127
|
export type RoleNumberParameterValue = {
|
|
147
128
|
base: number;
|
|
148
129
|
roles: Array<{
|
|
@@ -150,7 +131,6 @@ export type RoleNumberParameterValue = {
|
|
|
150
131
|
value: number;
|
|
151
132
|
}>;
|
|
152
133
|
};
|
|
153
|
-
|
|
154
134
|
export type RoleNumberParameter = BaseParameter & {
|
|
155
135
|
type: "role-numbers";
|
|
156
136
|
default?: RoleNumberParameterValue;
|
|
@@ -161,7 +141,6 @@ export type RoleNumberParameter = BaseParameter & {
|
|
|
161
141
|
max?: number;
|
|
162
142
|
};
|
|
163
143
|
};
|
|
164
|
-
|
|
165
144
|
export type ButtonParameter = BaseParameter & {
|
|
166
145
|
type: "button";
|
|
167
146
|
/**
|
|
@@ -170,30 +149,10 @@ export type ButtonParameter = BaseParameter & {
|
|
|
170
149
|
backendEventName: string;
|
|
171
150
|
buttonText: string;
|
|
172
151
|
size?: "extraSmall" | "small" | "large";
|
|
173
|
-
buttonType?:
|
|
174
|
-
| "default"
|
|
175
|
-
| "primary"
|
|
176
|
-
| "success"
|
|
177
|
-
| "info"
|
|
178
|
-
| "warning"
|
|
179
|
-
| "danger"
|
|
180
|
-
| "link";
|
|
152
|
+
buttonType?: "default" | "primary" | "success" | "info" | "warning" | "danger" | "link";
|
|
181
153
|
tooltip?: string;
|
|
182
|
-
tooltipPlacement?:
|
|
183
|
-
|
|
184
|
-
| "top-left"
|
|
185
|
-
| "top-right"
|
|
186
|
-
| "bottom"
|
|
187
|
-
| "bottom-left"
|
|
188
|
-
| "bottom-right"
|
|
189
|
-
| "left"
|
|
190
|
-
| "left-top"
|
|
191
|
-
| "left-bottom"
|
|
192
|
-
| "right"
|
|
193
|
-
| "right-top"
|
|
194
|
-
| "right-bottom";
|
|
195
|
-
};
|
|
196
|
-
|
|
154
|
+
tooltipPlacement?: "top" | "top-left" | "top-right" | "bottom" | "bottom-left" | "bottom-right" | "left" | "left-top" | "left-bottom" | "right" | "right-top" | "right-bottom";
|
|
155
|
+
};
|
|
197
156
|
export type HexColorParameter = BaseParameter & {
|
|
198
157
|
type: "hexcolor";
|
|
199
158
|
/**
|
|
@@ -202,7 +161,6 @@ export type HexColorParameter = BaseParameter & {
|
|
|
202
161
|
default: string;
|
|
203
162
|
allowAlpha?: boolean;
|
|
204
163
|
};
|
|
205
|
-
|
|
206
164
|
export type FontNameParameter = BaseParameter & {
|
|
207
165
|
type: "font-name";
|
|
208
166
|
/**
|
|
@@ -210,7 +168,6 @@ export type FontNameParameter = BaseParameter & {
|
|
|
210
168
|
*/
|
|
211
169
|
default?: string;
|
|
212
170
|
};
|
|
213
|
-
|
|
214
171
|
export type FontOptions = {
|
|
215
172
|
family: string;
|
|
216
173
|
size: number;
|
|
@@ -218,14 +175,12 @@ export type FontOptions = {
|
|
|
218
175
|
italic: boolean;
|
|
219
176
|
color?: string;
|
|
220
177
|
};
|
|
221
|
-
|
|
222
178
|
export type FontOptionsParameter = BaseParameter & {
|
|
223
179
|
type: "font-options";
|
|
224
180
|
default: FontOptions;
|
|
225
181
|
allowAlpha?: boolean;
|
|
226
182
|
hideColor?: boolean;
|
|
227
183
|
};
|
|
228
|
-
|
|
229
184
|
export type RadioCardsParameter<V = string> = BaseParameter & {
|
|
230
185
|
type: "radio-cards";
|
|
231
186
|
default?: V;
|
|
@@ -239,143 +194,55 @@ export type RadioCardsParameter<V = string> = BaseParameter & {
|
|
|
239
194
|
gridColumns?: number;
|
|
240
195
|
};
|
|
241
196
|
};
|
|
242
|
-
|
|
243
197
|
export type CodeMirrorParameter = BaseParameter & {
|
|
244
198
|
type: "codemirror";
|
|
245
199
|
default?: string;
|
|
246
200
|
settings?: {
|
|
247
|
-
mode: {
|
|
201
|
+
mode: {
|
|
202
|
+
name: "javascript";
|
|
203
|
+
json?: boolean;
|
|
204
|
+
} | "htmlmixed" | "css" | {
|
|
205
|
+
mode: "xml";
|
|
206
|
+
htmlMode: true;
|
|
207
|
+
};
|
|
248
208
|
theme: 'blackboard';
|
|
249
209
|
lineNumbers?: boolean;
|
|
250
210
|
autoRefresh?: boolean;
|
|
251
211
|
showGutter?: boolean;
|
|
252
212
|
};
|
|
253
213
|
};
|
|
254
|
-
|
|
255
214
|
export type CounterSelectParameter = BaseParameter & {
|
|
256
215
|
type: "counter-select";
|
|
257
216
|
default?: never;
|
|
258
217
|
};
|
|
259
|
-
|
|
260
218
|
export type SortTagSelectParameter = BaseParameter & {
|
|
261
219
|
type: "sort-tag-select";
|
|
262
220
|
context: string;
|
|
263
221
|
default?: never;
|
|
264
222
|
};
|
|
265
|
-
|
|
266
223
|
export type AnimationSelectParameter = BaseParameter & {
|
|
267
224
|
type: "animation-select";
|
|
268
225
|
animationType: "enter" | "exit" | "inbetween";
|
|
269
226
|
default?: Animation;
|
|
270
227
|
};
|
|
271
|
-
|
|
272
228
|
export type UnknownParameter = BaseParameter & {
|
|
273
229
|
[key: string]: unknown;
|
|
274
230
|
};
|
|
275
|
-
|
|
276
|
-
type FirebotParameter =
|
|
277
|
-
| StringParameter
|
|
278
|
-
| PasswordParameter
|
|
279
|
-
| BooleanParameter
|
|
280
|
-
| NumberParameter
|
|
281
|
-
| DateTimeParameter
|
|
282
|
-
| EnumParameter
|
|
283
|
-
| EffectListParameter
|
|
284
|
-
| DiscordChannelWebhookParameter
|
|
285
|
-
| CurrencySelectParameter
|
|
286
|
-
| ChatterSelectParameter
|
|
287
|
-
| EditableListParameter
|
|
288
|
-
| MultiselectParameter
|
|
289
|
-
| RolePercentagesParameter
|
|
290
|
-
| RoleNumberParameter
|
|
291
|
-
| ButtonParameter
|
|
292
|
-
| UnknownParameter
|
|
293
|
-
| HexColorParameter
|
|
294
|
-
| FontNameParameter
|
|
295
|
-
| FontOptionsParameter
|
|
296
|
-
| RadioCardsParameter
|
|
297
|
-
| CodeMirrorParameter
|
|
298
|
-
| CounterSelectParameter
|
|
299
|
-
| SortTagSelectParameter
|
|
300
|
-
| AnimationSelectParameter;
|
|
301
|
-
|
|
231
|
+
type FirebotParameter = StringParameter | PasswordParameter | BooleanParameter | NumberParameter | DateTimeParameter | EnumParameter | EffectListParameter | DiscordChannelWebhookParameter | CurrencySelectParameter | ChatterSelectParameter | EditableListParameter | MultiselectParameter | RolePercentagesParameter | RoleNumberParameter | ButtonParameter | UnknownParameter | HexColorParameter | FontNameParameter | FontOptionsParameter | RadioCardsParameter | CodeMirrorParameter | CounterSelectParameter | SortTagSelectParameter | AnimationSelectParameter;
|
|
302
232
|
export type ParametersConfig<P> = {
|
|
303
|
-
[K in keyof P]: (P[K] extends string
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
| DateTimeParameter
|
|
308
|
-
| FilepathParameter
|
|
309
|
-
| ChatterSelectParameter
|
|
310
|
-
| CurrencySelectParameter
|
|
311
|
-
| EnumParameter<string>
|
|
312
|
-
| HexColorParameter
|
|
313
|
-
| FontNameParameter
|
|
314
|
-
| RadioCardsParameter<string>
|
|
315
|
-
| CodeMirrorParameter
|
|
316
|
-
| CounterSelectParameter
|
|
317
|
-
| SortTagSelectParameter
|
|
318
|
-
: P[K] extends number
|
|
319
|
-
? NumberParameter | EnumParameter<number>
|
|
320
|
-
: P[K] extends boolean
|
|
321
|
-
? BooleanParameter | EnumParameter<boolean>
|
|
322
|
-
: P[K] extends Array<string>
|
|
323
|
-
? MultiselectParameter<string> | EditableListParameter
|
|
324
|
-
: P[K] extends Array<number>
|
|
325
|
-
? MultiselectParameter<number>
|
|
326
|
-
: P[K] extends void | undefined | null
|
|
327
|
-
? ButtonParameter
|
|
328
|
-
: P[K] extends RolePercentageParameterValue
|
|
329
|
-
? RolePercentagesParameter
|
|
330
|
-
: P[K] extends RoleNumberParameterValue
|
|
331
|
-
? RoleNumberParameter
|
|
332
|
-
: P[K] extends EffectList
|
|
333
|
-
? EffectListParameter
|
|
334
|
-
: P[K] extends FontOptions
|
|
335
|
-
? FontOptionsParameter
|
|
336
|
-
: P[K] extends Animation
|
|
337
|
-
? AnimationSelectParameter : FirebotParameter) & { value?: P[K] };
|
|
338
|
-
};
|
|
339
|
-
|
|
233
|
+
[K in keyof P]: (P[K] extends string ? StringParameter | PasswordParameter | DateTimeParameter | FilepathParameter | ChatterSelectParameter | CurrencySelectParameter | EnumParameter<string> | HexColorParameter | FontNameParameter | RadioCardsParameter<string> | CodeMirrorParameter | CounterSelectParameter | SortTagSelectParameter : P[K] extends number ? NumberParameter | EnumParameter<number> : P[K] extends boolean ? BooleanParameter | EnumParameter<boolean> : P[K] extends Array<string> ? MultiselectParameter<string> | EditableListParameter : P[K] extends Array<number> ? MultiselectParameter<number> : P[K] extends void | undefined | null ? ButtonParameter : P[K] extends RolePercentageParameterValue ? RolePercentagesParameter : P[K] extends RoleNumberParameterValue ? RoleNumberParameter : P[K] extends EffectList ? EffectListParameter : P[K] extends FontOptions ? FontOptionsParameter : P[K] extends Animation ? AnimationSelectParameter : FirebotParameter) & {
|
|
234
|
+
value?: P[K];
|
|
235
|
+
};
|
|
236
|
+
};
|
|
340
237
|
export type ParametersWithNameConfig<P> = {
|
|
341
|
-
[K in keyof P]: (P[K] extends string
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
| EnumParameter<string>
|
|
350
|
-
| HexColorParameter
|
|
351
|
-
| FontNameParameter
|
|
352
|
-
| RadioCardsParameter<string>
|
|
353
|
-
| CodeMirrorParameter
|
|
354
|
-
| CounterSelectParameter
|
|
355
|
-
| SortTagSelectParameter
|
|
356
|
-
: P[K] extends number
|
|
357
|
-
? NumberParameter | EnumParameter<number> | RadioCardsParameter<number>
|
|
358
|
-
: P[K] extends boolean
|
|
359
|
-
? BooleanParameter | EnumParameter<boolean> | RadioCardsParameter<boolean>
|
|
360
|
-
: P[K] extends Array<string>
|
|
361
|
-
? MultiselectParameter<string> | EditableListParameter
|
|
362
|
-
: P[K] extends Array<number>
|
|
363
|
-
? MultiselectParameter<number>
|
|
364
|
-
: P[K] extends void | undefined | null
|
|
365
|
-
? ButtonParameter
|
|
366
|
-
: P[K] extends RolePercentageParameterValue
|
|
367
|
-
? RolePercentagesParameter
|
|
368
|
-
: P[K] extends RoleNumberParameterValue
|
|
369
|
-
? RoleNumberParameter
|
|
370
|
-
: P[K] extends EffectList
|
|
371
|
-
? EffectListParameter
|
|
372
|
-
: P[K] extends FontOptions
|
|
373
|
-
? FontOptionsParameter
|
|
374
|
-
: P[K] extends Animation
|
|
375
|
-
? AnimationSelectParameter : FirebotParameter) & { name: K, showIf?: { [K2 in keyof P]?: P[K2] | Array<P[K2]> } };
|
|
376
|
-
};
|
|
377
|
-
|
|
378
|
-
type FirebotParamCategory<ParamConfig extends Record<string, unknown>> = {
|
|
238
|
+
[K in keyof P]: (P[K] extends string ? StringParameter | PasswordParameter | DateTimeParameter | FilepathParameter | ChatterSelectParameter | CurrencySelectParameter | EnumParameter<string> | HexColorParameter | FontNameParameter | RadioCardsParameter<string> | CodeMirrorParameter | CounterSelectParameter | SortTagSelectParameter : P[K] extends number ? NumberParameter | EnumParameter<number> | RadioCardsParameter<number> : P[K] extends boolean ? BooleanParameter | EnumParameter<boolean> | RadioCardsParameter<boolean> : P[K] extends Array<string> ? MultiselectParameter<string> | EditableListParameter : P[K] extends Array<number> ? MultiselectParameter<number> : P[K] extends void | undefined | null ? ButtonParameter : P[K] extends RolePercentageParameterValue ? RolePercentagesParameter : P[K] extends RoleNumberParameterValue ? RoleNumberParameter : P[K] extends EffectList ? EffectListParameter : P[K] extends FontOptions ? FontOptionsParameter : P[K] extends Animation ? AnimationSelectParameter : FirebotParameter) & {
|
|
239
|
+
name: K;
|
|
240
|
+
showIf?: {
|
|
241
|
+
[K2 in keyof P]?: P[K2] | Array<P[K2]>;
|
|
242
|
+
};
|
|
243
|
+
};
|
|
244
|
+
};
|
|
245
|
+
export type FirebotParamCategory<ParamConfig extends Record<string, unknown>> = {
|
|
379
246
|
title: string;
|
|
380
247
|
/**
|
|
381
248
|
* Used to order categories in the UI.
|
|
@@ -383,32 +250,9 @@ type FirebotParamCategory<ParamConfig extends Record<string, unknown>> = {
|
|
|
383
250
|
sortRank?: number;
|
|
384
251
|
settings: ParametersConfig<ParamConfig>;
|
|
385
252
|
};
|
|
386
|
-
|
|
387
253
|
export type FirebotParams = Record<string, unknown>;
|
|
388
|
-
|
|
389
|
-
export type FirebotParameterCategories<Config extends FirebotParams> = {
|
|
254
|
+
export type FirebotParameterCategories<Config extends Record<string, Record<string, unknown>>> = {
|
|
390
255
|
[Category in keyof Config]: FirebotParamCategory<Config[Category]>;
|
|
391
256
|
};
|
|
392
|
-
|
|
393
257
|
export type FirebotParameterArray<Config extends Record<string, unknown>> = ParametersWithNameConfig<Config>[keyof Config][];
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
// export type WithValues<Categories extends FirebotParameterCategories> = {
|
|
397
|
-
// [Category in keyof Categories]: Categories[Category] & {
|
|
398
|
-
// settings: {
|
|
399
|
-
// [Setting in keyof Categories[Category]["settings"]]: Categories[Category]["settings"][Setting] & {
|
|
400
|
-
// value?: Categories[Category]["settings"][Setting]["default"];
|
|
401
|
-
// };
|
|
402
|
-
// };
|
|
403
|
-
// }
|
|
404
|
-
// };
|
|
405
|
-
|
|
406
|
-
// type ValidParamKeys<T> = {
|
|
407
|
-
// [P in keyof T]: Exclude<T[P], undefined> extends void | undefined | null
|
|
408
|
-
// ? never
|
|
409
|
-
// : P;
|
|
410
|
-
// }[keyof T];
|
|
411
|
-
|
|
412
|
-
// export type ResolvedParameters<Config extends FirebotParams> = {
|
|
413
|
-
// [K in keyof Config]: Pick<Config[K], ValidParamKeys<Config[K]>>;
|
|
414
|
-
// }
|
|
258
|
+
export {};
|