narrat 3.3.7 → 3.4.0
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/README.md +1 -1
- package/dist/components/achievements/achievements-ui.vue.d.ts +2 -1
- package/dist/components/dialog-picture.vue.d.ts +18 -2
- package/dist/components/quests-ui.vue.d.ts +2 -0
- package/dist/components/utils/floating-tooltip.vue.d.ts +35 -0
- package/dist/config/achievements-config.d.ts +8 -4
- package/dist/config/animations-config.d.ts +64 -0
- package/dist/config/characters-config.d.ts +3 -0
- package/dist/config/choices-config.d.ts +28 -0
- package/dist/config/common-config.d.ts +2 -0
- package/dist/config/config-input.d.ts +23 -0
- package/dist/config/config-output.d.ts +69 -19
- package/dist/config/quests-config.d.ts +26 -0
- package/dist/config/tooltips-config.d.ts +16 -0
- package/dist/config.d.ts +88 -20
- package/dist/exports/others.d.ts +1 -0
- package/dist/exports/utils.d.ts +1 -0
- package/dist/inputs/Inputs.d.ts +9 -1
- package/dist/main.d.ts +2 -0
- package/dist/narrat.es.js +19245 -18535
- package/dist/narrat.es.js.map +1 -1
- package/dist/narrat.umd.js +143 -128
- package/dist/narrat.umd.js.map +1 -1
- package/dist/stores/choices-tracking-store.d.ts +12 -0
- package/dist/stores/dialog-store.d.ts +2 -0
- package/dist/stores/inputs-store.d.ts +3 -1
- package/dist/stores/inventory-store.d.ts +1 -0
- package/dist/stores/main-store.d.ts +5094 -212
- package/dist/stores/quest-log.d.ts +9 -1
- package/dist/stores/rendering-store.d.ts +13 -0
- package/dist/stores/tooltip-store.d.ts +1 -0
- package/dist/style.css +1 -1
- package/dist/types/app-types.d.ts +5 -0
- package/dist/types/game-save.d.ts +4 -0
- package/dist/utils/animation.d.ts +8 -0
- package/dist/utils/data-helpers.d.ts +332 -2
- package/dist/utils/interact-utils.d.ts +15 -0
- package/dist/utils/save-helpers.d.ts +1 -1
- package/dist/utils/string-helpers.d.ts +2 -1
- package/dist/vm/commands/choice.d.ts +5 -0
- package/dist/vm/commands/quest-commands.d.ts +14 -1
- package/dist/vm/commands/util-commands.d.ts +13 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -18,4 +18,4 @@ Or try editing the default narrat game easily:
|
|
|
18
18
|
|
|
19
19
|
With Codeflow you can test Narrat quickly without setting up an IDE
|
|
20
20
|
|
|
21
|
-
More info on the [narrat website](https://narrat.dev). There is an [online demo](https://narrat.dev/
|
|
21
|
+
More info on the [narrat website](https://narrat.dev). There is an [online demo](https://demo.narrat.dev/) available to try in the browser.
|
|
@@ -14,11 +14,12 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
|
14
14
|
chosenAchievementConf(): null | AchievementConfig;
|
|
15
15
|
achievementConf(): {
|
|
16
16
|
[key: string]: {
|
|
17
|
+
icon?: string | undefined;
|
|
17
18
|
category?: string | undefined;
|
|
19
|
+
lockedIcon?: string | undefined;
|
|
18
20
|
secret?: boolean | undefined;
|
|
19
21
|
name: string;
|
|
20
22
|
description: string;
|
|
21
|
-
icon: string;
|
|
22
23
|
};
|
|
23
24
|
};
|
|
24
25
|
sections(): AchievementsSectionProps[];
|
|
@@ -12,12 +12,20 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
12
12
|
loop?: boolean | undefined;
|
|
13
13
|
width?: number | undefined;
|
|
14
14
|
height?: number | undefined;
|
|
15
|
-
muted?: boolean | undefined;
|
|
16
15
|
autoplay?: boolean | undefined;
|
|
16
|
+
muted?: boolean | undefined;
|
|
17
17
|
video: string;
|
|
18
18
|
} | undefined>;
|
|
19
19
|
required: true;
|
|
20
20
|
};
|
|
21
|
+
character: {
|
|
22
|
+
type: import("vue").PropType<string | undefined>;
|
|
23
|
+
required: true;
|
|
24
|
+
};
|
|
25
|
+
pose: {
|
|
26
|
+
type: import("vue").PropType<string | undefined>;
|
|
27
|
+
required: true;
|
|
28
|
+
};
|
|
21
29
|
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
22
30
|
picture: {
|
|
23
31
|
type: import("vue").PropType<{
|
|
@@ -32,11 +40,19 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
32
40
|
loop?: boolean | undefined;
|
|
33
41
|
width?: number | undefined;
|
|
34
42
|
height?: number | undefined;
|
|
35
|
-
muted?: boolean | undefined;
|
|
36
43
|
autoplay?: boolean | undefined;
|
|
44
|
+
muted?: boolean | undefined;
|
|
37
45
|
video: string;
|
|
38
46
|
} | undefined>;
|
|
39
47
|
required: true;
|
|
40
48
|
};
|
|
49
|
+
character: {
|
|
50
|
+
type: import("vue").PropType<string | undefined>;
|
|
51
|
+
required: true;
|
|
52
|
+
};
|
|
53
|
+
pose: {
|
|
54
|
+
type: import("vue").PropType<string | undefined>;
|
|
55
|
+
required: true;
|
|
56
|
+
};
|
|
41
57
|
}>>, {}, {}>;
|
|
42
58
|
export default _default;
|
|
@@ -7,6 +7,8 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
|
7
7
|
id: string;
|
|
8
8
|
state: "hidden" | "unlocked" | "completed";
|
|
9
9
|
ending?: string | undefined;
|
|
10
|
+
succeeded?: boolean | undefined;
|
|
11
|
+
extraData: Record<string, any>;
|
|
10
12
|
objectives: {
|
|
11
13
|
[key: string]: import("../stores/quest-log").ObjectiveState;
|
|
12
14
|
};
|
|
@@ -4,7 +4,12 @@ export interface FloatingTooltipProps {
|
|
|
4
4
|
width: number;
|
|
5
5
|
x: number;
|
|
6
6
|
y: number;
|
|
7
|
+
screenWidth?: number;
|
|
8
|
+
screenHeight?: number;
|
|
7
9
|
screenMargin?: number;
|
|
10
|
+
cssClass?: string;
|
|
11
|
+
textCssClass?: string;
|
|
12
|
+
titleCssClass?: string;
|
|
8
13
|
}
|
|
9
14
|
declare const _default: import("vue").DefineComponent<{
|
|
10
15
|
title: {
|
|
@@ -26,9 +31,24 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
26
31
|
type: import("vue").PropType<number>;
|
|
27
32
|
required: true;
|
|
28
33
|
};
|
|
34
|
+
screenWidth: {
|
|
35
|
+
type: import("vue").PropType<number>;
|
|
36
|
+
};
|
|
37
|
+
screenHeight: {
|
|
38
|
+
type: import("vue").PropType<number>;
|
|
39
|
+
};
|
|
29
40
|
screenMargin: {
|
|
30
41
|
type: import("vue").PropType<number>;
|
|
31
42
|
};
|
|
43
|
+
cssClass: {
|
|
44
|
+
type: import("vue").PropType<string>;
|
|
45
|
+
};
|
|
46
|
+
textCssClass: {
|
|
47
|
+
type: import("vue").PropType<string>;
|
|
48
|
+
};
|
|
49
|
+
titleCssClass: {
|
|
50
|
+
type: import("vue").PropType<string>;
|
|
51
|
+
};
|
|
32
52
|
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
33
53
|
title: {
|
|
34
54
|
type: import("vue").PropType<string>;
|
|
@@ -49,8 +69,23 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
49
69
|
type: import("vue").PropType<number>;
|
|
50
70
|
required: true;
|
|
51
71
|
};
|
|
72
|
+
screenWidth: {
|
|
73
|
+
type: import("vue").PropType<number>;
|
|
74
|
+
};
|
|
75
|
+
screenHeight: {
|
|
76
|
+
type: import("vue").PropType<number>;
|
|
77
|
+
};
|
|
52
78
|
screenMargin: {
|
|
53
79
|
type: import("vue").PropType<number>;
|
|
54
80
|
};
|
|
81
|
+
cssClass: {
|
|
82
|
+
type: import("vue").PropType<string>;
|
|
83
|
+
};
|
|
84
|
+
textCssClass: {
|
|
85
|
+
type: import("vue").PropType<string>;
|
|
86
|
+
};
|
|
87
|
+
titleCssClass: {
|
|
88
|
+
type: import("vue").PropType<string>;
|
|
89
|
+
};
|
|
55
90
|
}>>, {}, {}>;
|
|
56
91
|
export default _default;
|
|
@@ -2,7 +2,8 @@ import { Static } from '@sinclair/typebox';
|
|
|
2
2
|
export declare const AchievementConfigSchema: import("@sinclair/typebox").TObject<{
|
|
3
3
|
name: import("@sinclair/typebox").TString;
|
|
4
4
|
description: import("@sinclair/typebox").TString;
|
|
5
|
-
icon: import("@sinclair/typebox").TString
|
|
5
|
+
icon: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
6
|
+
lockedIcon: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
6
7
|
secret: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
7
8
|
category: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
8
9
|
}>;
|
|
@@ -15,7 +16,8 @@ export type AchievementCategory = Static<typeof AchievementCategorySchema>;
|
|
|
15
16
|
export declare const AchievementsListSchema: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
16
17
|
name: import("@sinclair/typebox").TString;
|
|
17
18
|
description: import("@sinclair/typebox").TString;
|
|
18
|
-
icon: import("@sinclair/typebox").TString
|
|
19
|
+
icon: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
20
|
+
lockedIcon: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
19
21
|
secret: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
20
22
|
category: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
21
23
|
}>>;
|
|
@@ -29,7 +31,8 @@ export declare const AchievementsConfigSchema: import("@sinclair/typebox").TObje
|
|
|
29
31
|
achievements: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
30
32
|
name: import("@sinclair/typebox").TString;
|
|
31
33
|
description: import("@sinclair/typebox").TString;
|
|
32
|
-
icon: import("@sinclair/typebox").TString
|
|
34
|
+
icon: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
35
|
+
lockedIcon: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
33
36
|
secret: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
34
37
|
category: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
35
38
|
}>>;
|
|
@@ -49,7 +52,8 @@ export declare const AchievementsInputConfigSchema: import("@sinclair/typebox").
|
|
|
49
52
|
achievements: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
50
53
|
name: import("@sinclair/typebox").TString;
|
|
51
54
|
description: import("@sinclair/typebox").TString;
|
|
52
|
-
icon: import("@sinclair/typebox").TString
|
|
55
|
+
icon: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
56
|
+
lockedIcon: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
53
57
|
secret: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
54
58
|
category: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
55
59
|
}>>>;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { Static } from '@sinclair/typebox';
|
|
2
|
+
export declare const CSSAnimationOptionsSchema: import("@sinclair/typebox").TObject<{
|
|
3
|
+
delay: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
4
|
+
direction: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
5
|
+
duration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
6
|
+
easing: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
7
|
+
endDelay: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
8
|
+
fill: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
9
|
+
iterationStart: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
10
|
+
iterations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
11
|
+
keyframes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TAny>;
|
|
12
|
+
}>;
|
|
13
|
+
export type CSSAnimationOptions = Static<typeof CSSAnimationOptionsSchema>;
|
|
14
|
+
export declare const CSSAnimationKeyframesSchema: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TAny>;
|
|
15
|
+
export type CSSAnimationKeyframes = Static<typeof CSSAnimationKeyframesSchema>;
|
|
16
|
+
export declare const NarratAnimationInputSchema: import("@sinclair/typebox").TObject<{
|
|
17
|
+
keyframes: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TAny>]>;
|
|
18
|
+
options: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
19
|
+
delay: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
20
|
+
direction: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
21
|
+
duration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
22
|
+
easing: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
23
|
+
endDelay: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
24
|
+
fill: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
25
|
+
iterationStart: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
26
|
+
iterations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
27
|
+
keyframes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TAny>;
|
|
28
|
+
}>>;
|
|
29
|
+
}>;
|
|
30
|
+
export type NarratAnimationInput = Static<typeof NarratAnimationInputSchema>;
|
|
31
|
+
export declare const NarratAnimationSchema: import("@sinclair/typebox").TObject<{
|
|
32
|
+
keyframes: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TAny>;
|
|
33
|
+
options: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
34
|
+
delay: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
35
|
+
direction: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
36
|
+
duration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
37
|
+
easing: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
38
|
+
endDelay: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
39
|
+
fill: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
40
|
+
iterationStart: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
41
|
+
iterations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
42
|
+
keyframes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TAny>;
|
|
43
|
+
}>>;
|
|
44
|
+
}>;
|
|
45
|
+
export type NarratAnimation = Static<typeof NarratAnimationSchema>;
|
|
46
|
+
export declare const AnimationsConfigSchema: import("@sinclair/typebox").TObject<{
|
|
47
|
+
animations: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
48
|
+
keyframes: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TAny>]>;
|
|
49
|
+
options: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
50
|
+
delay: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
51
|
+
direction: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
52
|
+
duration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
53
|
+
easing: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
54
|
+
endDelay: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
55
|
+
fill: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
56
|
+
iterationStart: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
57
|
+
iterations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
58
|
+
keyframes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TAny>;
|
|
59
|
+
}>>;
|
|
60
|
+
}>>;
|
|
61
|
+
keyframes: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TAny>>;
|
|
62
|
+
}>;
|
|
63
|
+
export type AnimationsConfig = Static<typeof AnimationsConfigSchema>;
|
|
64
|
+
export declare const defaultAnimationsConfig: AnimationsConfig;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Static } from '@sinclair/typebox';
|
|
2
2
|
export declare const DialogStyleConfigSchema: import("@sinclair/typebox").TObject<{
|
|
3
|
+
portraitCssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
3
4
|
color: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
4
5
|
boxCss: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TAny>>;
|
|
5
6
|
nameCss: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TAny>>;
|
|
@@ -49,6 +50,7 @@ export declare const CharacterConfigSchema: import("@sinclair/typebox").TObject<
|
|
|
49
50
|
}>]>>>;
|
|
50
51
|
name: import("@sinclair/typebox").TString;
|
|
51
52
|
style: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
53
|
+
portraitCssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
52
54
|
color: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
53
55
|
boxCss: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TAny>>;
|
|
54
56
|
nameCss: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TAny>>;
|
|
@@ -77,6 +79,7 @@ export declare const CharactersFilesConfigSchema: import("@sinclair/typebox").TO
|
|
|
77
79
|
}>]>>>;
|
|
78
80
|
name: import("@sinclair/typebox").TString;
|
|
79
81
|
style: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
82
|
+
portraitCssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
80
83
|
color: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
81
84
|
boxCss: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TAny>>;
|
|
82
85
|
nameCss: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TAny>>;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Static } from '@sinclair/typebox';
|
|
2
|
+
export declare const ChoicePromptConfigSchema: import("@sinclair/typebox").TObject<{
|
|
3
|
+
cssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
4
|
+
textTemplate: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
5
|
+
}>;
|
|
6
|
+
export type ChoicePromptConfig = Static<typeof ChoicePromptConfigSchema>;
|
|
7
|
+
export declare const ChoicePromptListSchema: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
8
|
+
cssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
9
|
+
textTemplate: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
10
|
+
}>>;
|
|
11
|
+
export type ChoicePromptList = Static<typeof ChoicePromptListSchema>;
|
|
12
|
+
export declare const ChoicesConfigSchema: import("@sinclair/typebox").TObject<{
|
|
13
|
+
choiceTextTemplate: import("@sinclair/typebox").TString;
|
|
14
|
+
choicePrompts: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
15
|
+
cssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
16
|
+
textTemplate: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
17
|
+
}>>;
|
|
18
|
+
}>;
|
|
19
|
+
export type ChoicesConfig = Static<typeof ChoicesConfigSchema>;
|
|
20
|
+
export declare const ChoicesInputConfigSchema: import("@sinclair/typebox").TObject<{
|
|
21
|
+
choiceTextTemplate: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
22
|
+
choicePrompts: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
23
|
+
cssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
24
|
+
textTemplate: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
25
|
+
}>>>;
|
|
26
|
+
}>;
|
|
27
|
+
export type ChoicesInputConfig = Static<typeof ChoicesInputConfigSchema>;
|
|
28
|
+
export declare const defaultChoicesConfig: ChoicesConfig;
|
|
@@ -8,6 +8,8 @@ export declare const DialogPanelConfigSchema: import("@sinclair/typebox").TOptio
|
|
|
8
8
|
bottomOffset: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
9
9
|
width: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
10
10
|
height: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
11
|
+
hideDuringTransition: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
12
|
+
showAfterScriptEnd: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
11
13
|
}>>;
|
|
12
14
|
export type DialogPanelConfig = Static<typeof DialogPanelConfigSchema>;
|
|
13
15
|
export declare const SplashScreenConfigSchema: import("@sinclair/typebox").TObject<{
|
|
@@ -74,6 +74,8 @@ export declare const ConfigInputSchema: import("@sinclair/typebox").TObject<{
|
|
|
74
74
|
bottomOffset: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
75
75
|
width: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
76
76
|
height: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
77
|
+
hideDuringTransition: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
78
|
+
showAfterScriptEnd: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
77
79
|
}>>>;
|
|
78
80
|
splashScreens: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
79
81
|
engineSplashScreen: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
@@ -209,11 +211,21 @@ export declare const ConfigInputSchema: import("@sinclair/typebox").TObject<{
|
|
|
209
211
|
width: import("@sinclair/typebox").TNumber;
|
|
210
212
|
keywordsPrefix: import("@sinclair/typebox").TString;
|
|
211
213
|
screenEdgesMinimumMargin: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
214
|
+
styling: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
215
|
+
cssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
216
|
+
textCssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
217
|
+
titleCssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
218
|
+
}>>;
|
|
212
219
|
}>;
|
|
213
220
|
tooltips: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
214
221
|
keywords: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
215
222
|
title: import("@sinclair/typebox").TString;
|
|
216
223
|
description: import("@sinclair/typebox").TString;
|
|
224
|
+
styling: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
225
|
+
cssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
226
|
+
textCssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
227
|
+
titleCssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
228
|
+
}>>;
|
|
217
229
|
}>>;
|
|
218
230
|
}>]>>;
|
|
219
231
|
hudStats: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
@@ -249,8 +261,16 @@ export declare const ConfigInputSchema: import("@sinclair/typebox").TObject<{
|
|
|
249
261
|
quests: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
250
262
|
title: import("@sinclair/typebox").TString;
|
|
251
263
|
description: import("@sinclair/typebox").TString;
|
|
264
|
+
succeededDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
265
|
+
failedDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
266
|
+
endings: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
267
|
+
success: import("@sinclair/typebox").TBoolean;
|
|
268
|
+
description: import("@sinclair/typebox").TString;
|
|
269
|
+
}>>>;
|
|
252
270
|
objectives: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
253
271
|
description: import("@sinclair/typebox").TString;
|
|
272
|
+
succeededDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
273
|
+
failedDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
254
274
|
hidden: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
255
275
|
}>>;
|
|
256
276
|
category: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
@@ -297,6 +317,7 @@ export declare const ConfigInputSchema: import("@sinclair/typebox").TObject<{
|
|
|
297
317
|
}>]>>>;
|
|
298
318
|
name: import("@sinclair/typebox").TString;
|
|
299
319
|
style: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
320
|
+
portraitCssClass: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
300
321
|
color: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
301
322
|
boxCss: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TAny>>;
|
|
302
323
|
nameCss: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TAny>>;
|
|
@@ -304,5 +325,7 @@ export declare const ConfigInputSchema: import("@sinclair/typebox").TObject<{
|
|
|
304
325
|
}>>;
|
|
305
326
|
}>>;
|
|
306
327
|
}>]>;
|
|
328
|
+
choices: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
329
|
+
animations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
307
330
|
}>;
|
|
308
331
|
export type ConfigInput = Static<typeof ConfigInputSchema>;
|
|
@@ -11,6 +11,8 @@ import { TooltipsConfig } from './tooltips-config';
|
|
|
11
11
|
import { AchievementsConfig } from './achievements-config';
|
|
12
12
|
import { SkillChecksConfig } from './skillchecks-config';
|
|
13
13
|
import { SettingsConfig } from './settings-config';
|
|
14
|
+
import { ChoicesConfig } from './choices-config';
|
|
15
|
+
import { AnimationsConfig } from './animations-config';
|
|
14
16
|
export interface Config {
|
|
15
17
|
baseAssetsPath: string;
|
|
16
18
|
baseDataPath: string;
|
|
@@ -44,6 +46,8 @@ export interface Config {
|
|
|
44
46
|
debugging: DebuggingConfig;
|
|
45
47
|
saves: SavesConfig;
|
|
46
48
|
characters: CharactersFilesConfig;
|
|
49
|
+
choices: ChoicesConfig;
|
|
50
|
+
animations: AnimationsConfig;
|
|
47
51
|
}
|
|
48
52
|
export declare const defaultConfig: {
|
|
49
53
|
baseAssetsPath: string;
|
|
@@ -86,6 +90,8 @@ export declare const defaultConfig: {
|
|
|
86
90
|
textSpeed: number;
|
|
87
91
|
animateText: boolean;
|
|
88
92
|
timeBetweenLines: number;
|
|
93
|
+
showDuringTransition: boolean;
|
|
94
|
+
showAfterScriptEnd: boolean;
|
|
89
95
|
};
|
|
90
96
|
splashScreens: {};
|
|
91
97
|
screens: {
|
|
@@ -96,16 +102,16 @@ export declare const defaultConfig: {
|
|
|
96
102
|
} | undefined;
|
|
97
103
|
buttons?: (string | ({
|
|
98
104
|
text?: string | undefined;
|
|
99
|
-
cssClass?: string | undefined;
|
|
100
|
-
action?: string | undefined;
|
|
101
|
-
tag?: string | undefined;
|
|
102
105
|
background?: string | undefined;
|
|
106
|
+
cssClass?: string | undefined;
|
|
103
107
|
anchor?: {
|
|
104
108
|
x: number;
|
|
105
109
|
y: number;
|
|
106
110
|
} | undefined;
|
|
111
|
+
action?: string | undefined;
|
|
107
112
|
actionType?: string | undefined;
|
|
108
113
|
scriptClickable?: boolean | undefined;
|
|
114
|
+
tag?: string | undefined;
|
|
109
115
|
enabled: boolean;
|
|
110
116
|
position: {
|
|
111
117
|
width?: number | undefined;
|
|
@@ -123,16 +129,16 @@ export declare const defaultConfig: {
|
|
|
123
129
|
clickableDuringScriptsByDefault?: boolean | undefined;
|
|
124
130
|
buttons: Record<string, {
|
|
125
131
|
text?: string | undefined;
|
|
126
|
-
cssClass?: string | undefined;
|
|
127
|
-
action?: string | undefined;
|
|
128
|
-
tag?: string | undefined;
|
|
129
132
|
background?: string | undefined;
|
|
133
|
+
cssClass?: string | undefined;
|
|
130
134
|
anchor?: {
|
|
131
135
|
x: number;
|
|
132
136
|
y: number;
|
|
133
137
|
} | undefined;
|
|
138
|
+
action?: string | undefined;
|
|
134
139
|
actionType?: string | undefined;
|
|
135
140
|
scriptClickable?: boolean | undefined;
|
|
141
|
+
tag?: string | undefined;
|
|
136
142
|
enabled: boolean;
|
|
137
143
|
position: {
|
|
138
144
|
width?: number | undefined;
|
|
@@ -188,10 +194,20 @@ export declare const defaultConfig: {
|
|
|
188
194
|
options: {
|
|
189
195
|
delay?: number | undefined;
|
|
190
196
|
screenEdgesMinimumMargin?: number | undefined;
|
|
197
|
+
styling?: {
|
|
198
|
+
cssClass?: string | undefined;
|
|
199
|
+
textCssClass?: string | undefined;
|
|
200
|
+
titleCssClass?: string | undefined;
|
|
201
|
+
} | undefined;
|
|
191
202
|
width: number;
|
|
192
203
|
keywordsPrefix: string;
|
|
193
204
|
};
|
|
194
205
|
tooltips: {
|
|
206
|
+
styling?: {
|
|
207
|
+
cssClass?: string | undefined;
|
|
208
|
+
textCssClass?: string | undefined;
|
|
209
|
+
titleCssClass?: string | undefined;
|
|
210
|
+
} | undefined;
|
|
195
211
|
title: string;
|
|
196
212
|
description: string;
|
|
197
213
|
keywords: string[];
|
|
@@ -208,33 +224,34 @@ export declare const defaultConfig: {
|
|
|
208
224
|
title: string;
|
|
209
225
|
id: string;
|
|
210
226
|
}[];
|
|
211
|
-
defaultAchievementIcon: string;
|
|
212
227
|
achievements: Record<string, {
|
|
228
|
+
icon?: string | undefined;
|
|
213
229
|
category?: string | undefined;
|
|
230
|
+
lockedIcon?: string | undefined;
|
|
214
231
|
secret?: boolean | undefined;
|
|
215
232
|
name: string;
|
|
216
233
|
description: string;
|
|
217
|
-
icon: string;
|
|
218
234
|
}>;
|
|
235
|
+
defaultAchievementIcon: string;
|
|
219
236
|
notifyNewAchievements: boolean;
|
|
220
237
|
};
|
|
221
238
|
items: {
|
|
239
|
+
categories: {
|
|
240
|
+
title: string;
|
|
241
|
+
id: string;
|
|
242
|
+
}[];
|
|
222
243
|
items: Record<string, {
|
|
223
|
-
|
|
244
|
+
tag?: string | undefined;
|
|
224
245
|
onUse?: {
|
|
225
246
|
label: string;
|
|
226
247
|
action: string;
|
|
227
248
|
} | undefined;
|
|
228
|
-
|
|
249
|
+
category?: string | undefined;
|
|
229
250
|
showIfEmpty?: boolean | undefined;
|
|
230
251
|
name: string;
|
|
231
252
|
description: string;
|
|
232
253
|
icon: string;
|
|
233
254
|
}>;
|
|
234
|
-
categories: {
|
|
235
|
-
title: string;
|
|
236
|
-
id: string;
|
|
237
|
-
}[];
|
|
238
255
|
};
|
|
239
256
|
interactionTags: {
|
|
240
257
|
default: {
|
|
@@ -242,19 +259,27 @@ export declare const defaultConfig: {
|
|
|
242
259
|
};
|
|
243
260
|
};
|
|
244
261
|
quests: {
|
|
262
|
+
categories: {
|
|
263
|
+
title: string;
|
|
264
|
+
id: string;
|
|
265
|
+
}[];
|
|
245
266
|
quests: Record<string, {
|
|
246
267
|
category?: string | undefined;
|
|
268
|
+
succeededDescription?: string | undefined;
|
|
269
|
+
failedDescription?: string | undefined;
|
|
270
|
+
endings?: Record<string, {
|
|
271
|
+
description: string;
|
|
272
|
+
success: boolean;
|
|
273
|
+
}> | undefined;
|
|
247
274
|
title: string;
|
|
248
275
|
description: string;
|
|
249
276
|
objectives: Record<string, {
|
|
250
277
|
hidden?: boolean | undefined;
|
|
278
|
+
succeededDescription?: string | undefined;
|
|
279
|
+
failedDescription?: string | undefined;
|
|
251
280
|
description: string;
|
|
252
281
|
}>;
|
|
253
282
|
}>;
|
|
254
|
-
categories: {
|
|
255
|
-
title: string;
|
|
256
|
-
id: string;
|
|
257
|
-
}[];
|
|
258
283
|
};
|
|
259
284
|
transitions: {};
|
|
260
285
|
menuButtons: {};
|
|
@@ -273,6 +298,7 @@ export declare const defaultConfig: {
|
|
|
273
298
|
};
|
|
274
299
|
characters: Record<string, {
|
|
275
300
|
style?: {
|
|
301
|
+
portraitCssClass?: string | undefined;
|
|
276
302
|
color?: string | undefined;
|
|
277
303
|
boxCss?: Record<string, any> | undefined;
|
|
278
304
|
nameCss?: Record<string, any> | undefined;
|
|
@@ -282,8 +308,8 @@ export declare const defaultConfig: {
|
|
|
282
308
|
loop?: boolean | undefined;
|
|
283
309
|
width?: number | undefined;
|
|
284
310
|
height?: number | undefined;
|
|
285
|
-
muted?: boolean | undefined;
|
|
286
311
|
autoplay?: boolean | undefined;
|
|
312
|
+
muted?: boolean | undefined;
|
|
287
313
|
video: string;
|
|
288
314
|
} | {
|
|
289
315
|
width?: number | undefined;
|
|
@@ -293,5 +319,29 @@ export declare const defaultConfig: {
|
|
|
293
319
|
name: string;
|
|
294
320
|
}>;
|
|
295
321
|
};
|
|
322
|
+
choices: {
|
|
323
|
+
choiceTextTemplate: string;
|
|
324
|
+
choicePrompts: Record<string, {
|
|
325
|
+
cssClass?: string | undefined;
|
|
326
|
+
textTemplate?: string | undefined;
|
|
327
|
+
}>;
|
|
328
|
+
};
|
|
329
|
+
animations: {
|
|
330
|
+
animations: Record<string, {
|
|
331
|
+
options?: {
|
|
332
|
+
fill?: string | undefined;
|
|
333
|
+
delay?: number | undefined;
|
|
334
|
+
duration?: number | undefined;
|
|
335
|
+
direction?: string | undefined;
|
|
336
|
+
easing?: string | undefined;
|
|
337
|
+
endDelay?: number | undefined;
|
|
338
|
+
iterationStart?: number | undefined;
|
|
339
|
+
iterations?: number | undefined;
|
|
340
|
+
keyframes?: any;
|
|
341
|
+
} | undefined;
|
|
342
|
+
keyframes: string | any[];
|
|
343
|
+
}>;
|
|
344
|
+
keyframes: Record<string, any[]>;
|
|
345
|
+
};
|
|
296
346
|
};
|
|
297
347
|
export declare const defaultConfigTyped: Config;
|
|
@@ -1,14 +1,24 @@
|
|
|
1
1
|
import { Static } from '@sinclair/typebox';
|
|
2
2
|
export declare const ObjectiveDataSchema: import("@sinclair/typebox").TObject<{
|
|
3
3
|
description: import("@sinclair/typebox").TString;
|
|
4
|
+
succeededDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
5
|
+
failedDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
4
6
|
hidden: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
5
7
|
}>;
|
|
6
8
|
export type ObjectiveData = Static<typeof ObjectiveDataSchema>;
|
|
7
9
|
export declare const QuestDataSchema: import("@sinclair/typebox").TObject<{
|
|
8
10
|
title: import("@sinclair/typebox").TString;
|
|
9
11
|
description: import("@sinclair/typebox").TString;
|
|
12
|
+
succeededDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
13
|
+
failedDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
14
|
+
endings: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
15
|
+
success: import("@sinclair/typebox").TBoolean;
|
|
16
|
+
description: import("@sinclair/typebox").TString;
|
|
17
|
+
}>>>;
|
|
10
18
|
objectives: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
11
19
|
description: import("@sinclair/typebox").TString;
|
|
20
|
+
succeededDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
21
|
+
failedDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
12
22
|
hidden: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
13
23
|
}>>;
|
|
14
24
|
category: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
@@ -22,8 +32,16 @@ export type QuestCategory = Static<typeof QuestCategorySchema>;
|
|
|
22
32
|
export declare const QuestsListSchema: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
23
33
|
title: import("@sinclair/typebox").TString;
|
|
24
34
|
description: import("@sinclair/typebox").TString;
|
|
35
|
+
succeededDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
36
|
+
failedDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
37
|
+
endings: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
38
|
+
success: import("@sinclair/typebox").TBoolean;
|
|
39
|
+
description: import("@sinclair/typebox").TString;
|
|
40
|
+
}>>>;
|
|
25
41
|
objectives: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
26
42
|
description: import("@sinclair/typebox").TString;
|
|
43
|
+
succeededDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
44
|
+
failedDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
27
45
|
hidden: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
28
46
|
}>>;
|
|
29
47
|
category: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
@@ -33,8 +51,16 @@ export declare const QuestsConfigSchema: import("@sinclair/typebox").TObject<{
|
|
|
33
51
|
quests: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
34
52
|
title: import("@sinclair/typebox").TString;
|
|
35
53
|
description: import("@sinclair/typebox").TString;
|
|
54
|
+
succeededDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
55
|
+
failedDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
56
|
+
endings: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
57
|
+
success: import("@sinclair/typebox").TBoolean;
|
|
58
|
+
description: import("@sinclair/typebox").TString;
|
|
59
|
+
}>>>;
|
|
36
60
|
objectives: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
|
|
37
61
|
description: import("@sinclair/typebox").TString;
|
|
62
|
+
succeededDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
63
|
+
failedDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
38
64
|
hidden: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
39
65
|
}>>;
|
|
40
66
|
category: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|