@league-of-foundry-developers/foundry-vtt-types 9.255.1 → 9.268.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.
Files changed (117) hide show
  1. package/README.md +5 -4
  2. package/package.json +3 -2
  3. package/src/foundry/common/data/data.mjs/index.d.ts +0 -1
  4. package/src/foundry/common/types.mjs.d.ts +4 -4
  5. package/src/foundry/common/utils/helpers.mjs.d.ts +1 -0
  6. package/src/foundry/foundry.js/application.d.ts +0 -1
  7. package/src/foundry/foundry.js/applications/basePlaceableHUDs/tokenHUD.d.ts +7 -3
  8. package/src/foundry/foundry.js/applications/cameraViews.d.ts +3 -3
  9. package/src/foundry/foundry.js/applications/chatPopout.d.ts +1 -1
  10. package/src/foundry/foundry.js/applications/compendium.d.ts +20 -11
  11. package/src/foundry/foundry.js/applications/controlsReference.d.ts +17 -2
  12. package/src/foundry/foundry.js/applications/dialog.d.ts +14 -29
  13. package/src/foundry/foundry.js/applications/filePicker.d.ts +67 -75
  14. package/src/foundry/foundry.js/applications/formApplication.d.ts +7 -2
  15. package/src/foundry/foundry.js/applications/formApplications/avConfig.d.ts +19 -58
  16. package/src/foundry/foundry.js/applications/formApplications/combatTrackerConfig.d.ts +2 -4
  17. package/src/foundry/foundry.js/applications/formApplications/{entitySheetConfig.d.ts → documentSheetConfig.d.ts} +36 -19
  18. package/src/foundry/foundry.js/applications/formApplications/documentSheets/ambientLightConfig.d.ts +1 -4
  19. package/src/foundry/foundry.js/applications/formApplications/documentSheets/ambientSoundConfig.d.ts +2 -4
  20. package/src/foundry/foundry.js/applications/formApplications/documentSheets/cardConfig.d.ts +51 -0
  21. package/src/foundry/foundry.js/applications/formApplications/documentSheets/cardsConfig.d.ts +88 -0
  22. package/src/foundry/foundry.js/applications/formApplications/documentSheets/cardsConfigs/cardsHand.d.ts +20 -0
  23. package/src/foundry/foundry.js/applications/formApplications/documentSheets/cardsConfigs/cardsPile.d.ts +20 -0
  24. package/src/foundry/foundry.js/applications/formApplications/documentSheets/cardsConfigs/index.d.ts +2 -0
  25. package/src/foundry/foundry.js/applications/formApplications/documentSheets/combatantConfig.d.ts +2 -4
  26. package/src/foundry/foundry.js/applications/formApplications/documentSheets/folderConfig.d.ts +17 -11
  27. package/src/foundry/foundry.js/applications/formApplications/documentSheets/index.d.ts +3 -0
  28. package/src/foundry/foundry.js/applications/formApplications/documentSheets/itemSheet.d.ts +3 -9
  29. package/src/foundry/foundry.js/applications/formApplications/documentSheets/journalSheet.d.ts +10 -12
  30. package/src/foundry/foundry.js/applications/formApplications/documentSheets/macroConfig.d.ts +4 -5
  31. package/src/foundry/foundry.js/applications/formApplications/documentSheets/measuredTemplateConfig.d.ts +2 -6
  32. package/src/foundry/foundry.js/applications/formApplications/documentSheets/noteConfig.d.ts +1 -4
  33. package/src/foundry/foundry.js/applications/formApplications/documentSheets/permissionControl.d.ts +8 -12
  34. package/src/foundry/foundry.js/applications/formApplications/documentSheets/playlistConfig.d.ts +2 -1
  35. package/src/foundry/foundry.js/applications/formApplications/documentSheets/playlistSoundConfig.d.ts +1 -4
  36. package/src/foundry/foundry.js/applications/formApplications/documentSheets/rollTableConfig.d.ts +10 -11
  37. package/src/foundry/foundry.js/applications/formApplications/documentSheets/sceneConfig.d.ts +28 -15
  38. package/src/foundry/foundry.js/applications/formApplications/documentSheets/tileConfig.d.ts +3 -6
  39. package/src/foundry/foundry.js/applications/formApplications/documentSheets/userConfig.d.ts +1 -4
  40. package/src/foundry/foundry.js/applications/formApplications/drawingConfig.d.ts +17 -21
  41. package/src/foundry/foundry.js/applications/formApplications/gridConfig.d.ts +3 -3
  42. package/src/foundry/foundry.js/applications/formApplications/imagePopout.d.ts +40 -7
  43. package/src/foundry/foundry.js/applications/formApplications/index.d.ts +2 -2
  44. package/src/foundry/foundry.js/applications/formApplications/moduleManagement.d.ts +10 -24
  45. package/src/foundry/foundry.js/applications/formApplications/permissionConfig.d.ts +1 -1
  46. package/src/foundry/foundry.js/applications/formApplications/settingsConfig.d.ts +15 -3
  47. package/src/foundry/foundry.js/applications/formApplications/tokenConfig.d.ts +23 -16
  48. package/src/foundry/foundry.js/applications/formApplications/{defaultTokenConfig.d.ts → tokenConfigs/defaultTokenConfig.d.ts} +29 -16
  49. package/src/foundry/foundry.js/applications/formApplications/tokenConfigs/index.d.ts +1 -0
  50. package/src/foundry/foundry.js/applications/formApplications/wallConfig.d.ts +22 -15
  51. package/src/foundry/foundry.js/applications/formApplications/worldConfig.d.ts +23 -12
  52. package/src/foundry/foundry.js/applications/hotbar.d.ts +7 -3
  53. package/src/foundry/foundry.js/applications/index.d.ts +1 -0
  54. package/src/foundry/foundry.js/applications/invitationLinks.d.ts +25 -10
  55. package/src/foundry/foundry.js/applications/sceneNavigation.d.ts +16 -1
  56. package/src/foundry/foundry.js/applications/sidebar.d.ts +7 -0
  57. package/src/foundry/foundry.js/applications/sidebarTabs/chatLog.d.ts +65 -38
  58. package/src/foundry/foundry.js/applications/sidebarTabs/compendiumDirectory.d.ts +17 -3
  59. package/src/foundry/foundry.js/applications/sidebarTabs/settings.d.ts +19 -16
  60. package/src/foundry/foundry.js/applications/sidebarTabs/sidebarDirectories/actorDirectory.d.ts +0 -3
  61. package/src/foundry/foundry.js/applications/sidebarTabs/sidebarDirectories/journalDirectory.d.ts +4 -18
  62. package/src/foundry/foundry.js/applications/sidebarTabs/sidebarDirectories/macroDirectory.d.ts +2 -8
  63. package/src/foundry/foundry.js/applications/sidebarTabs/sidebarDirectories/playlistDirectory.d.ts +38 -5
  64. package/src/foundry/foundry.js/applications/sidebarTabs/sidebarDirectories/sceneDirectory.d.ts +6 -0
  65. package/src/foundry/foundry.js/applications/sidebarTabs/sidebarDirectory.d.ts +3 -1
  66. package/src/foundry/foundry.js/applications/supportDetails.d.ts +78 -0
  67. package/src/foundry/foundry.js/clientDocumentMixin.d.ts +2 -2
  68. package/src/foundry/foundry.js/clientDocuments/cards.d.ts +10 -2
  69. package/src/foundry/foundry.js/clientDocuments/chatMessage.d.ts +87 -49
  70. package/src/foundry/foundry.js/clientDocuments/folder.d.ts +3 -7
  71. package/src/foundry/foundry.js/clientDocuments/playlist.d.ts +6 -13
  72. package/src/foundry/foundry.js/clientDocuments/playlistSound.d.ts +6 -0
  73. package/src/foundry/foundry.js/collections/documentCollections/compendiumCollection.d.ts +1 -1
  74. package/src/foundry/foundry.js/collections/documentCollections/worldCollection.d.ts +2 -2
  75. package/src/foundry/foundry.js/config.d.ts +21 -21
  76. package/src/foundry/foundry.js/contextMenu.d.ts +37 -28
  77. package/src/foundry/foundry.js/game.d.ts +2 -2
  78. package/src/foundry/foundry.js/handlebarsHelpers.d.ts +26 -4
  79. package/src/foundry/foundry.js/mouseInteractionManager.d.ts +1 -1
  80. package/src/foundry/foundry.js/perceptionManager.d.ts +1 -1
  81. package/src/foundry/foundry.js/pixi/containers/canvasLayer.d.ts +2 -1
  82. package/src/foundry/foundry.js/pixi/containers/canvasLayers/controlsLayer.d.ts +49 -48
  83. package/src/foundry/foundry.js/pixi/containers/canvasLayers/placeablesLayer.d.ts +51 -40
  84. package/src/foundry/foundry.js/pixi/containers/canvasLayers/placeablesLayers/lightingLayer.d.ts +63 -20
  85. package/src/foundry/foundry.js/pixi/containers/canvasLayers/placeablesLayers/mapLayer.d.ts +0 -3
  86. package/src/foundry/foundry.js/pixi/containers/canvasLayers/placeablesLayers/mapLayers/backgroundLayer.d.ts +4 -4
  87. package/src/foundry/foundry.js/pixi/containers/canvasLayers/placeablesLayers/mapLayers/foregroundLayer.d.ts +21 -0
  88. package/src/foundry/foundry.js/pixi/containers/canvasLayers/placeablesLayers/notesLayer.d.ts +1 -1
  89. package/src/foundry/foundry.js/pixi/containers/canvasLayers/placeablesLayers/soundsLayer.d.ts +10 -2
  90. package/src/foundry/foundry.js/pixi/containers/canvasLayers/placeablesLayers/tokenLayer.d.ts +41 -20
  91. package/src/foundry/foundry.js/pixi/containers/canvasLayers/placeablesLayers/wallsLayer.d.ts +50 -121
  92. package/src/foundry/foundry.js/pixi/containers/canvasLayers/sightLayer.d.ts +125 -107
  93. package/src/foundry/foundry.js/pixi/containers/controlIcon.d.ts +3 -0
  94. package/src/foundry/foundry.js/pixi/containers/index.d.ts +1 -0
  95. package/src/foundry/foundry.js/pixi/containers/objectHUD.d.ts +82 -0
  96. package/src/foundry/foundry.js/pixi/containers/placeableObjects/ambientLight.d.ts +27 -6
  97. package/src/foundry/foundry.js/pixi/containers/placeableObjects/ambientSound.d.ts +26 -4
  98. package/src/foundry/foundry.js/pixi/containers/placeableObjects/drawing.d.ts +34 -20
  99. package/src/foundry/foundry.js/pixi/containers/placeableObjects/measuredTemplate.d.ts +52 -15
  100. package/src/foundry/foundry.js/pixi/containers/placeableObjects/note.d.ts +9 -2
  101. package/src/foundry/foundry.js/pixi/containers/placeableObjects/tile.d.ts +50 -12
  102. package/src/foundry/foundry.js/pixi/containers/placeableObjects/token.d.ts +248 -87
  103. package/src/foundry/foundry.js/pixi/containers/placeableObjects/wall.d.ts +107 -16
  104. package/src/foundry/foundry.js/pixi/filters/abstractFilter.d.ts +42 -0
  105. package/src/foundry/foundry.js/pixi/filters/abstractFilters/fogColorFilter.d.ts +16 -0
  106. package/src/foundry/foundry.js/pixi/filters/abstractFilters/forceColorFilter.d.ts +17 -0
  107. package/src/foundry/foundry.js/pixi/filters/abstractFilters/glowFilter.d.ts +31 -0
  108. package/src/foundry/foundry.js/pixi/filters/abstractFilters/index.d.ts +4 -0
  109. package/src/foundry/foundry.js/pixi/filters/abstractFilters/roofMaskFilter.d.ts +20 -0
  110. package/src/foundry/foundry.js/pixi/filters/index.d.ts +2 -0
  111. package/src/foundry/foundry.js/roll.d.ts +2 -2
  112. package/src/foundry/foundry.js/rollTerms/poolTerm.d.ts +5 -0
  113. package/src/foundry/foundry.js/textEditor.d.ts +266 -231
  114. package/src/types/augments/index.d.ts +2 -0
  115. package/src/types/augments/pixiGraphicsSmooth.d.ts +7 -0
  116. package/src/types/augments/pixiLegacyGraphics.d.ts +7 -0
  117. package/src/types/utils.d.ts +5 -0
@@ -1,12 +1,24 @@
1
1
  /**
2
2
  * Audio/Video Conferencing Configuration Sheet
3
+ *
4
+ * @typeParam Options - The type of the options object
5
+ * @typeParam Data - The data structure used to render the handlebars template.
3
6
  */
4
- declare class AVConfig extends FormApplication<AVConfig.Options, AVConfig.Data, AVMaster> {
7
+ declare class AVConfig<
8
+ Options extends FormApplicationOptions = FormApplicationOptions,
9
+ Data extends object = AVConfig.Data
10
+ > extends FormApplication<Options, Data, AVMaster> {
11
+ /**
12
+ * @param object - The {@link AVMaster} instance being configured.
13
+ * @param options - Application configuration options.
14
+ */
15
+ constructor(object?: AVMaster | undefined, options?: Partial<Options> | undefined);
16
+
5
17
  /** @override */
6
- static get defaultOptions(): AVConfig.Options;
18
+ static get defaultOptions(): FormApplicationOptions;
7
19
 
8
20
  /** @override */
9
- getData(options: Partial<AVConfig.Options>): Promise<AVConfig.Data>;
21
+ getData(options: Partial<Options>): Promise<Data>;
10
22
 
11
23
  /** @override */
12
24
  activateListeners(html: JQuery): void;
@@ -16,6 +28,7 @@ declare class AVConfig extends FormApplication<AVConfig.Options, AVConfig.Data,
16
28
  * @param selector - Selector for the section to enable or disable
17
29
  * @param enabled - Whether to enable or disable this section
18
30
  * (default: true)
31
+ * @internal
19
32
  */
20
33
  protected _setConfigSectionEnabled(selector: string, enabled?: boolean): void;
21
34
 
@@ -24,75 +37,23 @@ declare class AVConfig extends FormApplication<AVConfig.Options, AVConfig.Data,
24
37
  * unavailable since the last time it was set.
25
38
  * @param sources - The available devices
26
39
  * @param source - The selected device
40
+ * @internal
27
41
  */
28
42
  protected _isSourceUnavailable(sources: Record<string, string>, source: string): boolean;
29
43
 
30
- /**
31
- * Callback when the server type changes
32
- * Will enable or disable the server section based on whether the user selected a custom server or not
33
- * @param event - The event that triggered the server type change
34
- */
35
- protected _onServerTypeChanged(event: JQuery.ChangeEvent): void;
36
-
37
44
  /**
38
45
  * Callback when the turn server type changes
39
46
  * Will enable or disable the turn section based on whether the user selected a custom turn or not
40
47
  * @param event - The event that triggered the turn server type change
48
+ * @internal
41
49
  */
42
50
  protected _onTurnTypeChanged(event: JQuery.ChangeEvent): void;
43
51
 
44
- /**
45
- * Handle the assignment of a push-to-talk/push-to-mute key
46
- */
47
- protected _onPTTKeyDown(event: JQuery.KeyDownEvent): void;
48
-
49
- /**
50
- * Handle the assignment of a push-to-talk/push-to-mute mouse key
51
- */
52
- protected _onPTTMouseDown(event: JQuery.MouseDownEvent): void;
53
-
54
52
  /** @override */
55
- protected _updateObject(event: Event, formData?: object): Promise<void>;
53
+ protected _updateObject(event: Event, formData?: object): Promise<unknown>;
56
54
  }
57
55
 
58
56
  declare namespace AVConfig {
59
- interface Options extends FormApplicationOptions {
60
- /**
61
- * @defaultValue `game.i18n.localize('WEBRTC.Title')`
62
- */
63
- title: string;
64
-
65
- /**
66
- * @defaultValue `'av-config'`
67
- */
68
- id: string;
69
-
70
- /**
71
- * @defaultValue `'templates/sidebar/apps/av-config.html'`
72
- */
73
- template: string;
74
-
75
- /**
76
- * @defaultValue `true`
77
- */
78
- popOut: boolean;
79
-
80
- /**
81
- * @defaultValue `480`
82
- */
83
- width: number;
84
-
85
- /**
86
- * @defaultValue `'auto'`
87
- */
88
- height: number | 'auto';
89
-
90
- /**
91
- * @defaultValue `[{navSelector: '.tabs', contentSelector: 'form', initial: 'general'}]`
92
- */
93
- tabs: (TabsConfiguration & { contentSelector: string; initial: string })[];
94
- }
95
-
96
57
  interface Data {
97
58
  user: Game['user'];
98
59
  modes: {
@@ -8,6 +8,7 @@ declare class CombatTrackerConfig<
8
8
  Data extends object = CombatTrackerConfig.Data
9
9
  > extends FormApplication<Options, Data, undefined> {
10
10
  /**
11
+ * @override
11
12
  * @defaultValue
12
13
  * ```typescript
13
14
  * foundry.utils.mergeObject(super.defaultOptions, {
@@ -25,10 +26,7 @@ declare class CombatTrackerConfig<
25
26
  getData(options?: Partial<Options>): Data | Promise<Data>;
26
27
 
27
28
  /** @override */
28
- protected _updateObject(
29
- event: Event,
30
- formData: ClientSettings.Values['core.combatTrackerConfig']
31
- ): Promise<ClientSettings.Values['core.combatTrackerConfig']>;
29
+ protected _updateObject(event: Event, formData: ClientSettings.Values['core.combatTrackerConfig']): Promise<unknown>;
32
30
  }
33
31
 
34
32
  declare namespace CombatTrackerConfig {
@@ -1,16 +1,16 @@
1
- import type { DocumentConstructor } from '../../../../types/helperTypes';
1
+ import type { DocumentConstructor, DocumentType } from '../../../../types/helperTypes';
2
2
 
3
3
  declare global {
4
4
  /**
5
- * Entity Sheet Configuration Application
5
+ * Document Sheet Configuration Application
6
6
  * @typeParam Options - The type of the options object
7
7
  * @typeParam Data - The data structure used to render the handlebars template.
8
8
  * @typeParam ConcreteDocument - The type of the Document which is being managed
9
9
  */
10
- class EntitySheetConfig<
10
+ class DocumentSheetConfig<
11
11
  Options extends FormApplicationOptions = FormApplicationOptions,
12
- Data extends object = EntitySheetConfig.Data<foundry.abstract.Document<any, any>, Options>,
13
- ConcreteDocument extends foundry.abstract.Document<any, any> = Data extends EntitySheetConfig.Data<infer T>
12
+ Data extends object = DocumentSheetConfig.Data<foundry.abstract.Document<any, any>, Options>,
13
+ ConcreteDocument extends foundry.abstract.Document<any, any> = Data extends DocumentSheetConfig.Data<infer T>
14
14
  ? T
15
15
  : foundry.abstract.Document<any, any>
16
16
  > extends FormApplication<Options, Data, ConcreteDocument> {
@@ -18,9 +18,9 @@ declare global {
18
18
  * @defaultValue
19
19
  * ```typescript
20
20
  * foundry.utils.mergeObject(super.defaultOptions, {
21
- * id: "sheet-config",
21
+ * classes: ["form", "sheet-config"],
22
22
  * template: "templates/sheets/sheet-config.html",
23
- * width: 400,
23
+ * width: 400
24
24
  * })
25
25
  * ```
26
26
  */
@@ -30,7 +30,7 @@ declare global {
30
30
  * An array of pending sheet assignments which are submitted before other elements of the framework are ready.
31
31
  * @internal
32
32
  */
33
- static _pending: Array<EntitySheetConfig.SheetAssignment>;
33
+ protected static _pending: Array<DocumentSheetConfig.SheetAssignment>;
34
34
 
35
35
  /** @override */
36
36
  get title(): string;
@@ -39,11 +39,11 @@ declare global {
39
39
  getData(options?: Partial<Options>): Data | Promise<Data>;
40
40
 
41
41
  /** @override */
42
- protected _updateObject(event: Event, formData: EntitySheetConfig.FormData): Promise<void>;
42
+ protected _updateObject(event: Event, formData: DocumentSheetConfig.FormData): Promise<unknown>;
43
43
 
44
44
  /**
45
- * Initialize the configured Sheet preferences for Entities which support dynamic Sheet assignment
46
- * Create the configuration structure for supported entities
45
+ * Initialize the configured Sheet preferences for Documents which support dynamic Sheet assignment
46
+ * Create the configuration structure for supported documents
47
47
  * Process any pending sheet registrations
48
48
  * Update the default values from settings data
49
49
  */
@@ -55,7 +55,7 @@ declare global {
55
55
  protected static _getDocumentTypes(cls: DocumentConstructor, types?: string[]): string[];
56
56
 
57
57
  /**
58
- * Register a sheet class as a candidate which can be used to display entities of a given type
58
+ * Register a sheet class as a candidate which can be used to display documents of a given type
59
59
  * @param documentClass - The Document class for which to register a new Sheet option
60
60
  * @param scope - Provide a unique namespace scope for this sheet
61
61
  * @param sheetClass - A defined Application class used to render the sheet
@@ -65,7 +65,7 @@ declare global {
65
65
  documentClass: DocumentConstructor,
66
66
  scope: string,
67
67
  sheetClass: ConstructorOf<FormApplication<FormApplicationOptions, any, any>>,
68
- { label, types, makeDefault }?: EntitySheetConfig.RegisterSheetOptions
68
+ { label, types, makeDefault }?: DocumentSheetConfig.RegisterSheetOptions | undefined
69
69
  ): void;
70
70
 
71
71
  /**
@@ -79,7 +79,7 @@ declare global {
79
79
  sheetClass,
80
80
  types,
81
81
  makeDefault
82
- }: Omit<EntitySheetConfig.SheetRegistration, 'action'>): void;
82
+ }: Omit<DocumentSheetConfig.SheetRegistration, 'action'>): void;
83
83
 
84
84
  /**
85
85
  * Unregister a sheet class, removing it from the list of available Applications to use for a Document type
@@ -103,15 +103,21 @@ declare global {
103
103
  documentClass,
104
104
  id,
105
105
  types
106
- }: Omit<EntitySheetConfig.SheetUnregistration, 'action'>): void;
106
+ }: Omit<DocumentSheetConfig.SheetUnregistration, 'action'>): void;
107
107
 
108
108
  /**
109
109
  * Update the currently default Sheets using a new core world setting
110
110
  */
111
- static updateDefaultSheets(setting?: Record<'Actor' | 'Item', Record<string, string>>): void;
111
+ static updateDefaultSheets(setting?: Record<DocumentType, Record<string, string>>): void;
112
+
113
+ /**
114
+ * Initialize default sheet configurations for all document types.
115
+ * @internal
116
+ */
117
+ protected static _registerDefaultSheets(): void;
112
118
  }
113
119
 
114
- namespace EntitySheetConfig {
120
+ namespace DocumentSheetConfig {
115
121
  type SheetRegistration = {
116
122
  action: 'register';
117
123
  documentClass: DocumentConstructor;
@@ -140,7 +146,7 @@ declare global {
140
146
  Options extends FormApplicationOptions = FormApplicationOptions
141
147
  > {
142
148
  isGM: boolean;
143
- object: foundry.utils.Duplicated<ConcreteDocument['data']>;
149
+ object: ConcreteDocument['data']['_source'];
144
150
  options: Options;
145
151
  sheetClass: string;
146
152
  sheetClasses: Record<string, string>;
@@ -157,7 +163,7 @@ declare global {
157
163
  /** A human readable label for the sheet name, which will be localized */
158
164
  label?: string;
159
165
 
160
- /** An array of entity types for which this sheet should be used */
166
+ /** An array of document types for which this sheet should be used */
161
167
  types?: string[];
162
168
 
163
169
  /**
@@ -167,4 +173,15 @@ declare global {
167
173
  makeDefault?: boolean;
168
174
  }
169
175
  }
176
+
177
+ /**
178
+ * @deprecated since v9
179
+ */
180
+ class EntitySheetConfig<
181
+ Options extends FormApplicationOptions = FormApplicationOptions,
182
+ Data extends object = DocumentSheetConfig.Data<foundry.abstract.Document<any, any>, Options>,
183
+ ConcreteDocument extends foundry.abstract.Document<any, any> = Data extends DocumentSheetConfig.Data<infer T>
184
+ ? T
185
+ : foundry.abstract.Document<any, any>
186
+ > extends DocumentSheetConfig<Options, Data, ConcreteDocument> {}
170
187
  }
@@ -58,10 +58,7 @@ declare global {
58
58
  * @param event - (unused)
59
59
  * @override
60
60
  */
61
- protected _updateObject(
62
- event: Event,
63
- formData: AmbientLightConfig.FormData
64
- ): Promise<InstanceType<ConfiguredDocumentClassForName<'AmbientLight'>> | undefined>;
61
+ protected _updateObject(event: Event, formData: AmbientLightConfig.FormData): Promise<unknown>;
65
62
 
66
63
  /**
67
64
  * Refresh the display of the AmbientLight object
@@ -34,10 +34,7 @@ declare global {
34
34
  * @param event - (unused)
35
35
  * @override
36
36
  */
37
- protected _updateObject(
38
- event: Event,
39
- formData: AmbientSoundConfig.FormData
40
- ): Promise<InstanceType<ConfiguredDocumentClassForName<'AmbientSound'>>>;
37
+ protected _updateObject(event: Event, formData: AmbientSoundConfig.FormData): Promise<unknown>;
41
38
 
42
39
  /** @override */
43
40
  close(options?: Application.CloseOptions): Promise<void>;
@@ -47,6 +44,7 @@ declare global {
47
44
  interface Data<Options extends DocumentSheetOptions>
48
45
  extends DocumentSheet.Data<InstanceType<ConfiguredDocumentClassForName<'AmbientSound'>>, Options> {
49
46
  submitText: string;
47
+ gridUnits: string;
50
48
  }
51
49
 
52
50
  type FormData = Pick<foundry.data.AmbientSoundData, 'easing' | 'path' | 'volume'> &
@@ -0,0 +1,51 @@
1
+ import type { ConfiguredDocumentClassForName, ConstructorDataType } from '../../../../../types/helperTypes.js';
2
+ import type { CardFaceData } from '../../../../common/data/module.mjs.js';
3
+
4
+ declare global {
5
+ /**
6
+ * A DocumentSheet application responsible for displaying and editing a single embedded Card document.
7
+ *
8
+ * @typeParam Options - The type of the options object
9
+ * @typeParam Data - The data structure used to render the handlebars template.
10
+ */
11
+ class CardConfig<
12
+ Options extends DocumentSheetOptions = DocumentSheetOptions,
13
+ Data extends CardConfig.Data<Options> = CardConfig.Data<Options>
14
+ > extends DocumentSheet<Options, Data, InstanceType<ConfiguredDocumentClassForName<'Card'>>> {
15
+ /**
16
+ * @defaultValue
17
+ * ```typescript
18
+ * foundry.utils.mergeObject(super.defaultOptions, {
19
+ * classes: ["sheet", "card-config"],
20
+ * template: "templates/cards/card-config.html",
21
+ * width: 480,
22
+ * height: "auto",
23
+ * tabs: [{navSelector: ".tabs", contentSelector: "form", initial: "details"}]
24
+ * })
25
+ * ```
26
+ */
27
+ static override get defaultOptions(): DocumentSheetOptions;
28
+
29
+ override getData(options?: Partial<Options>): Data | Promise<Data>;
30
+
31
+ override activateListeners(html: JQuery): void;
32
+
33
+ protected override _getSubmitData(
34
+ updateData?: object | null
35
+ ): Record<string, unknown> & { faces: ConstructorDataType<CardFaceData>[] };
36
+
37
+ /**
38
+ * Handle card face control actions which modify single cards on the sheet.
39
+ * @param event - The originating click event
40
+ * @returns A Promise which resolves once the handler has completed
41
+ */
42
+ protected _onFaceControl(event: JQuery.ClickEvent): Promise<void>;
43
+ }
44
+
45
+ namespace CardConfig {
46
+ interface Data<Options extends DocumentSheetOptions>
47
+ extends DocumentSheet.Data<InstanceType<ConfiguredDocumentClassForName<'Card'>>, Options> {
48
+ types: Record<string, string>;
49
+ }
50
+ }
51
+ }
@@ -0,0 +1,88 @@
1
+ import type { ConfiguredDocumentClassForName } from '../../../../../types/helperTypes.js';
2
+
3
+ declare global {
4
+ /**
5
+ * A DocumentSheet application responsible for displaying and editing a single Cards stack.
6
+ *
7
+ * @typeParam Options - The type of the options object
8
+ * @typeParam Data - The data structure used to render the handlebars template.
9
+ */
10
+ class CardsConfig<
11
+ Options extends DocumentSheetOptions = DocumentSheetOptions,
12
+ Data extends CardsConfig.Data<Options> = CardsConfig.Data<Options>
13
+ > extends DocumentSheet<Options, Data, InstanceType<ConfiguredDocumentClassForName<'Cards'>>> {
14
+ constructor(object: ConfiguredDocumentClassForName<'Cards'>, options: Options);
15
+
16
+ /**
17
+ * The sorting mode used to display the sheet, "standard" if true, otherwise "shuffled"
18
+ * @internal
19
+ * @defaultValue `false`
20
+ */
21
+ protected _sortStandard: boolean;
22
+
23
+ /**
24
+ * @defaultValue
25
+ * ```typescript
26
+ * foundry.utils.mergeObject(super.defaultOptions, {
27
+ * classes: ["sheet", "cards-config"],
28
+ * template: "templates/cards/cards-deck.html",
29
+ * width: 620,
30
+ * height: "auto",
31
+ * closeOnSubmit: false,
32
+ * viewPermission: CONST.DOCUMENT_PERMISSION_LEVELS.OBSERVER,
33
+ * dragDrop: [{dragSelector: "ol.cards li.card", dropSelector: "ol.cards"}],
34
+ * tabs: [{navSelector: ".tabs", contentSelector: "form", initial: "cards"}],
35
+ * scrollY: ["ol.cards"]
36
+ * })
37
+ * ```
38
+ */
39
+ static override get defaultOptions(): DocumentSheetOptions;
40
+
41
+ override getData(options?: Partial<Options>): Data | Promise<Data>;
42
+
43
+ override activateListeners(html: JQuery): void;
44
+
45
+ /**
46
+ * Handle card control actions which modify single cards on the sheet.
47
+ * @param event - The originating click event
48
+ * @returns A Promise which resolves once the handler has completed
49
+ */
50
+ protected _onCardControl(event: JQuery.ClickEvent): Promise<void>;
51
+
52
+ /**
53
+ * Handle lazy-loading card face images.
54
+ * See {@link SidebarTab#_onLazyLoadImage}
55
+ */
56
+ protected _onLazyLoadImage(entries: IntersectionObserverEntry[], observer: IntersectionObserver): void;
57
+
58
+ /** @param selector - (unused) */
59
+ protected override _canDragStart(selector: string): boolean;
60
+
61
+ protected override _onDragStart(event: DragEvent): void;
62
+
63
+ /** @param selector - (unused) */
64
+ protected override _canDragDrop(selector: string): boolean;
65
+
66
+ protected override _onDrop(event: DragEvent): void;
67
+
68
+ /**
69
+ * Handle sorting a Card relative to other siblings within this document
70
+ * @param event - The drag drop event
71
+ * @param card - The card being dragged
72
+ * @internal
73
+ */
74
+ protected _onSortCard(
75
+ event: DragEvent,
76
+ card: InstanceType<ConfiguredDocumentClassForName<'Card'>>
77
+ ): ReturnType<InstanceType<ConfiguredDocumentClassForName<'Cards'>>['updateEmbeddedDocuments']>;
78
+ }
79
+
80
+ namespace CardsConfig {
81
+ interface Data<Options extends DocumentSheetOptions>
82
+ extends DocumentSheet.Data<InstanceType<ConfiguredDocumentClassForName<'Cards'>>, Options> {
83
+ cards: InstanceType<ConfiguredDocumentClassForName<'Card'>>[];
84
+ types: Record<string, string>;
85
+ inCompendium: boolean;
86
+ }
87
+ }
88
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * A subclass of CardsConfig which provides a sheet representation for Cards documents with the "hand" type.
3
+ *
4
+ * @typeParam Options - The type of the options object
5
+ * @typeParam Data - The data structure used to render the handlebars template.
6
+ */
7
+ declare class CardsHand<
8
+ Options extends DocumentSheetOptions = DocumentSheetOptions,
9
+ Data extends CardsConfig.Data<Options> = CardsConfig.Data<Options>
10
+ > extends CardsConfig<Options, Data> {
11
+ /**
12
+ * @defaultValue
13
+ * ```typescript
14
+ * foundry.utils.mergeObject(super.defaultOptions, {
15
+ * template: "templates/cards/cards-hand.html"
16
+ * })
17
+ * ```
18
+ */
19
+ static override get defaultOptions(): DocumentSheetOptions;
20
+ }
@@ -0,0 +1,20 @@
1
+ /**
2
+ * A subclass of CardsConfig which provides a sheet representation for Cards documents with the "pile" type.
3
+ *
4
+ * @typeParam Options - The type of the options object
5
+ * @typeParam Data - The data structure used to render the handlebars template.
6
+ */
7
+ declare class CardsPile<
8
+ Options extends DocumentSheetOptions = DocumentSheetOptions,
9
+ Data extends CardsConfig.Data<Options> = CardsConfig.Data<Options>
10
+ > extends CardsConfig<Options, Data> {
11
+ /**
12
+ * @defaultValue
13
+ * ```typescript
14
+ * foundry.utils.mergeObject(super.defaultOptions, {
15
+ * template: "templates/cards/cards-pile.html"
16
+ * })
17
+ * ```
18
+ */
19
+ static override get defaultOptions(): DocumentSheetOptions;
20
+ }
@@ -0,0 +1,2 @@
1
+ import './cardsHand';
2
+ import './cardsPile';
@@ -12,6 +12,7 @@ declare global {
12
12
  Data extends CombatantConfig.Data<Options> = CombatantConfig.Data<Options>
13
13
  > extends DocumentSheet<Options, Data, InstanceType<ConfiguredDocumentClass<typeof Combatant>>> {
14
14
  /**
15
+ * @override
15
16
  * @defaultValue
16
17
  * ```typescript
17
18
  * foundry.utils.mergeObject(super.defaultOptions, {
@@ -32,10 +33,7 @@ declare global {
32
33
  * @param event - (unused)
33
34
  * @override
34
35
  */
35
- protected _updateObject(
36
- event: Event,
37
- formData: CombatantConfig.FormData
38
- ): Promise<InstanceType<ConfiguredDocumentClass<typeof Combatant>> | undefined>;
36
+ protected _updateObject(event: Event, formData: CombatantConfig.FormData): Promise<unknown>;
39
37
  }
40
38
 
41
39
  namespace CombatantConfig {
@@ -4,12 +4,14 @@ import type { SortingModes } from '../../../../common/data/data.mjs/folderData';
4
4
  declare global {
5
5
  /**
6
6
  * The Application responsible for configuring a single Folder document.
7
+ *
8
+ * @typeParam Options - the type of the options object
9
+ * @typeParam Data - The data structure used to render the handlebars template.
7
10
  */
8
- class FolderConfig extends DocumentSheet<
9
- DocumentSheetOptions,
10
- FolderConfig.Data,
11
- InstanceType<ConfiguredDocumentClass<typeof Folder>>
12
- > {
11
+ class FolderConfig<
12
+ Options extends FolderConfig.Options = FolderConfig.Options,
13
+ Data extends object = FolderConfig.Data
14
+ > extends DocumentSheet<Options, Data, InstanceType<ConfiguredDocumentClass<typeof Folder>>> {
13
15
  /**
14
16
  * @override
15
17
  * @defaultValue
@@ -21,7 +23,7 @@ declare global {
21
23
  * })
22
24
  * ```
23
25
  */
24
- static get defaultOptions(): typeof DocumentSheet['defaultOptions'];
26
+ static get defaultOptions(): DocumentSheetOptions;
25
27
 
26
28
  /** @override */
27
29
  get id(): string;
@@ -29,24 +31,28 @@ declare global {
29
31
  /** @override */
30
32
  get title(): string;
31
33
 
34
+ /** @override */
35
+ close(options?: Application.CloseOptions | undefined): Promise<void>;
36
+
32
37
  /**
33
38
  * @param options - (unused)
34
39
  * @override
35
40
  */
36
- getData(options?: Partial<FormApplicationOptions>): Promise<FolderConfig.Data>;
41
+ getData(options?: Partial<Options>): Promise<Data>;
37
42
 
38
43
  /**
39
44
  * @param event - (unused)
40
45
  * @override
41
46
  * @internal
42
47
  */
43
- protected _updateObject(
44
- event: Event,
45
- formData: FolderConfig.FormData
46
- ): Promise<InstanceType<ConfiguredDocumentClass<typeof Folder>> | undefined>;
48
+ protected _updateObject(event: Event, formData: FolderConfig.FormData): Promise<unknown>;
47
49
  }
48
50
 
49
51
  namespace FolderConfig {
52
+ interface Options extends DocumentSheetOptions {
53
+ resolve?: (doc: InstanceType<ConfiguredDocumentClass<typeof Folder>>) => void;
54
+ }
55
+
50
56
  interface Data {
51
57
  name: string;
52
58
  newName: string;
@@ -2,6 +2,9 @@ import './activeEffectConfig';
2
2
  import './actorSheet';
3
3
  import './ambientLightConfig';
4
4
  import './ambientSoundConfig';
5
+ import './cardConfig';
6
+ import './cardsConfig';
7
+ import './cardsConfigs';
5
8
  import './combatantConfig';
6
9
  import './folderConfig';
7
10
  import './itemSheet';
@@ -26,6 +26,7 @@ declare global {
26
26
  * resizable: true,
27
27
  * baseApplication: "ItemSheet",
28
28
  * id: "item"
29
+ * })
29
30
  * ```
30
31
  */
31
32
  static get defaultOptions(): ItemSheet.Options;
@@ -37,7 +38,7 @@ declare global {
37
38
  get title(): string;
38
39
 
39
40
  /**
40
- * A convenience reference to the Item entity
41
+ * A convenience reference to the Item document
41
42
  */
42
43
  get item(): this['object'];
43
44
 
@@ -57,19 +58,12 @@ declare global {
57
58
  */
58
59
  getData(options?: Partial<Options>): Data | Promise<Data>;
59
60
 
60
- /** @override */
61
- protected _getHeaderButtons(): Application.HeaderButton[];
62
-
63
61
  /** @override */
64
62
  activateListeners(html: JQuery): void;
65
63
 
66
- /**
67
- * Handle requests to configure the default sheet used by this Item
68
- */
69
- protected _onConfigureSheet(event: JQuery.ClickEvent): void;
70
-
71
64
  /**
72
65
  * Handle changing the item image
66
+ * @internal
73
67
  */
74
68
  protected _onEditImage(event: JQuery.ClickEvent): ReturnType<FilePicker['browse']>;
75
69
  }