@league-of-foundry-developers/foundry-vtt-types 13.346.0-beta.20250709090128 → 13.346.0-beta.20250709212159
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/package.json +1 -1
- package/src/foundry/client/documents/active-effect.d.mts +3 -3
- package/src/foundry/common/abstract/document.d.mts +16 -14
- package/src/foundry/common/documents/actor-delta.d.mts +3 -6
- package/src/foundry/common/documents/actor.d.mts +3 -6
- package/src/foundry/common/documents/cards.d.mts +3 -6
- package/src/foundry/common/documents/combat.d.mts +3 -6
- package/src/foundry/common/documents/item.d.mts +3 -6
- package/src/foundry/common/documents/journal-entry.d.mts +3 -6
- package/src/foundry/common/documents/playlist.d.mts +3 -6
- package/src/foundry/common/documents/region.d.mts +3 -6
- package/src/foundry/common/documents/roll-table.d.mts +3 -6
- package/src/foundry/common/documents/scene.d.mts +3 -6
- package/src/foundry/common/documents/token.d.mts +3 -6
- package/src/foundry/common/utils/helpers.d.mts +5 -1
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
3
3
|
"name": "@league-of-foundry-developers/foundry-vtt-types",
|
4
|
-
"version": "13.346.0-beta.
|
4
|
+
"version": "13.346.0-beta.20250709212159",
|
5
5
|
"description": "TypeScript type definitions for Foundry VTT",
|
6
6
|
"type": "module",
|
7
7
|
"types": "./src/index.d.mts",
|
@@ -411,18 +411,18 @@ declare namespace ActiveEffect {
|
|
411
411
|
/** Options passed along in Create operations for ActiveEffects */
|
412
412
|
interface Create<Temporary extends boolean | undefined = boolean | undefined>
|
413
413
|
extends foundry.abstract.types.DatabaseCreateOperation<ActiveEffect.CreateData, ActiveEffect.Parent, Temporary> {
|
414
|
-
animate?: boolean;
|
414
|
+
animate?: boolean | undefined;
|
415
415
|
}
|
416
416
|
|
417
417
|
/** Options passed along in Delete operations for ActiveEffects */
|
418
418
|
interface Delete extends foundry.abstract.types.DatabaseDeleteOperation<ActiveEffect.Parent> {
|
419
|
-
animate?: boolean;
|
419
|
+
animate?: boolean | undefined;
|
420
420
|
}
|
421
421
|
|
422
422
|
/** Options passed along in Update operations for ActiveEffects */
|
423
423
|
interface Update
|
424
424
|
extends foundry.abstract.types.DatabaseUpdateOperation<ActiveEffect.UpdateData, ActiveEffect.Parent> {
|
425
|
-
animate?: boolean;
|
425
|
+
animate?: boolean | undefined;
|
426
426
|
}
|
427
427
|
|
428
428
|
/** Operation for {@linkcode ActiveEffect.createDocuments} */
|
@@ -1268,17 +1268,20 @@ declare namespace Document {
|
|
1268
1268
|
SubType extends AllSubType,
|
1269
1269
|
TypeMap extends Record<AllSubType, { system: object | undefined }>,
|
1270
1270
|
AllSubType extends string = SubType,
|
1271
|
-
> = SubType extends unknown
|
1271
|
+
> = SubType extends unknown
|
1272
|
+
? [AllSubType] extends [SubType]
|
1273
|
+
? TypeMap[SubType] // There's only one subtype so avoid the worse type display of `OfType`.
|
1274
|
+
: OfType<SubType, TypeMap, AllSubType>
|
1275
|
+
: never;
|
1272
1276
|
|
1273
1277
|
// Note(LukeAbby): This is named `OfType` to display as `Document.Internal.OfType` in quick info.
|
1274
1278
|
interface OfType<
|
1275
1279
|
OneSubType extends AllSubType,
|
1276
1280
|
TypeMap extends Record<AllSubType, { system: object | undefined }>,
|
1277
1281
|
AllSubType extends string,
|
1278
|
-
> extends
|
1279
|
-
TypeMap[OneSubType]
|
1280
|
-
|
1281
|
-
system: DiscriminatedSystem<
|
1282
|
+
> extends _DynamicBase<
|
1283
|
+
TypeMap[OneSubType] & {
|
1284
|
+
system: SystemDiscriminant<
|
1282
1285
|
Exclude<TypeMap[OneSubType]["system"], undefined>,
|
1283
1286
|
Exclude<TypeMap[AllSubType]["system"], undefined>
|
1284
1287
|
>;
|
@@ -1286,16 +1289,15 @@ declare namespace Document {
|
|
1286
1289
|
> {}
|
1287
1290
|
|
1288
1291
|
// @ts-expect-error This pattern is intrinsically an error.
|
1289
|
-
interface
|
1292
|
+
interface _DynamicBase<Base extends object> extends Base {}
|
1290
1293
|
|
1291
1294
|
/** @internal */
|
1292
|
-
|
1293
|
-
|
1294
|
-
|
1295
|
-
|
1296
|
-
|
1297
|
-
|
1298
|
-
> {}
|
1295
|
+
type SystemDiscriminant<System extends object, AllSystem extends object> = Omit<
|
1296
|
+
{
|
1297
|
+
[K in AllKeysOf<AllSystem>]?: never;
|
1298
|
+
},
|
1299
|
+
keyof System
|
1300
|
+
>;
|
1299
1301
|
|
1300
1302
|
interface DropData<DocumentType extends Document.Type> {
|
1301
1303
|
/**
|
@@ -1926,7 +1928,7 @@ declare namespace Document {
|
|
1926
1928
|
|
1927
1929
|
type CreateOperationForName<
|
1928
1930
|
DocumentType extends Document.Type,
|
1929
|
-
Temporary extends boolean | undefined = undefined,
|
1931
|
+
Temporary extends boolean | undefined = boolean | undefined,
|
1930
1932
|
> =
|
1931
1933
|
| (DocumentType extends "ActiveEffect" ? ActiveEffect.Database.CreateOperation<Temporary> : never)
|
1932
1934
|
| (DocumentType extends "ActorDelta" ? ActorDelta.Database.CreateOperation<Temporary> : never)
|
@@ -191,17 +191,14 @@ declare abstract class BaseActorDelta<
|
|
191
191
|
override createEmbeddedDocuments<EmbeddedName extends ActorDelta.Embedded.Name>(
|
192
192
|
embeddedName: EmbeddedName,
|
193
193
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
194
|
-
|
195
|
-
|
196
|
-
// However this causes a number of errors.
|
197
|
-
operation?: object,
|
198
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
194
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
195
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
199
196
|
|
200
197
|
override updateEmbeddedDocuments<EmbeddedName extends ActorDelta.Embedded.Name>(
|
201
198
|
embeddedName: EmbeddedName,
|
202
199
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
203
200
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
204
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
201
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
205
202
|
|
206
203
|
override deleteEmbeddedDocuments<EmbeddedName extends ActorDelta.Embedded.Name>(
|
207
204
|
embeddedName: EmbeddedName,
|
@@ -185,17 +185,14 @@ declare abstract class BaseActor<out SubType extends Actor.SubType = Actor.SubTy
|
|
185
185
|
override createEmbeddedDocuments<EmbeddedName extends Actor.Embedded.Name>(
|
186
186
|
embeddedName: EmbeddedName,
|
187
187
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
188
|
-
|
189
|
-
|
190
|
-
// However this causes a number of errors.
|
191
|
-
operation?: object,
|
192
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
188
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
189
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
193
190
|
|
194
191
|
override updateEmbeddedDocuments<EmbeddedName extends Actor.Embedded.Name>(
|
195
192
|
embeddedName: EmbeddedName,
|
196
193
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
197
194
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
198
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
195
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
199
196
|
|
200
197
|
override deleteEmbeddedDocuments<EmbeddedName extends Actor.Embedded.Name>(
|
201
198
|
embeddedName: EmbeddedName,
|
@@ -161,17 +161,14 @@ declare abstract class BaseCards<out SubType extends BaseCards.SubType = BaseCar
|
|
161
161
|
override createEmbeddedDocuments<EmbeddedName extends Cards.Embedded.Name>(
|
162
162
|
embeddedName: EmbeddedName,
|
163
163
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
164
|
-
|
165
|
-
|
166
|
-
// However this causes a number of errors.
|
167
|
-
operation?: object,
|
168
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
164
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
165
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
169
166
|
|
170
167
|
override updateEmbeddedDocuments<EmbeddedName extends Cards.Embedded.Name>(
|
171
168
|
embeddedName: EmbeddedName,
|
172
169
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
173
170
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
174
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
171
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
175
172
|
|
176
173
|
override deleteEmbeddedDocuments<EmbeddedName extends Cards.Embedded.Name>(
|
177
174
|
embeddedName: EmbeddedName,
|
@@ -164,17 +164,14 @@ declare abstract class BaseCombat<out SubType extends BaseCombat.SubType = BaseC
|
|
164
164
|
override createEmbeddedDocuments<EmbeddedName extends Combat.Embedded.Name>(
|
165
165
|
embeddedName: EmbeddedName,
|
166
166
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
167
|
-
|
168
|
-
|
169
|
-
// However this causes a number of errors.
|
170
|
-
operation?: object,
|
171
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
167
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
168
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
172
169
|
|
173
170
|
override updateEmbeddedDocuments<EmbeddedName extends Combat.Embedded.Name>(
|
174
171
|
embeddedName: EmbeddedName,
|
175
172
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
176
173
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
177
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
174
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
178
175
|
|
179
176
|
override deleteEmbeddedDocuments<EmbeddedName extends Combat.Embedded.Name>(
|
180
177
|
embeddedName: EmbeddedName,
|
@@ -170,17 +170,14 @@ declare abstract class BaseItem<out SubType extends Item.SubType = Item.SubType>
|
|
170
170
|
override createEmbeddedDocuments<EmbeddedName extends Item.Embedded.Name>(
|
171
171
|
embeddedName: EmbeddedName,
|
172
172
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
173
|
-
|
174
|
-
|
175
|
-
// However this causes a number of errors.
|
176
|
-
operation?: object,
|
177
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
173
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
174
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
178
175
|
|
179
176
|
override updateEmbeddedDocuments<EmbeddedName extends Item.Embedded.Name>(
|
180
177
|
embeddedName: EmbeddedName,
|
181
178
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
182
179
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
183
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
180
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
184
181
|
|
185
182
|
override deleteEmbeddedDocuments<EmbeddedName extends Item.Embedded.Name>(
|
186
183
|
embeddedName: EmbeddedName,
|
@@ -147,17 +147,14 @@ declare abstract class BaseJournalEntry extends Document<"JournalEntry", BaseJou
|
|
147
147
|
override createEmbeddedDocuments<EmbeddedName extends JournalEntry.Embedded.Name>(
|
148
148
|
embeddedName: EmbeddedName,
|
149
149
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
150
|
-
|
151
|
-
|
152
|
-
// However this causes a number of errors.
|
153
|
-
operation?: object,
|
154
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
150
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
151
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
155
152
|
|
156
153
|
override updateEmbeddedDocuments<EmbeddedName extends JournalEntry.Embedded.Name>(
|
157
154
|
embeddedName: EmbeddedName,
|
158
155
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
159
156
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
160
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
157
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
161
158
|
|
162
159
|
override deleteEmbeddedDocuments<EmbeddedName extends JournalEntry.Embedded.Name>(
|
163
160
|
embeddedName: EmbeddedName,
|
@@ -144,17 +144,14 @@ declare abstract class BasePlaylist extends Document<"Playlist", BasePlaylist.Sc
|
|
144
144
|
override createEmbeddedDocuments<EmbeddedName extends Playlist.Embedded.Name>(
|
145
145
|
embeddedName: EmbeddedName,
|
146
146
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
147
|
-
|
148
|
-
|
149
|
-
// However this causes a number of errors.
|
150
|
-
operation?: object,
|
151
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
147
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
148
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
152
149
|
|
153
150
|
override updateEmbeddedDocuments<EmbeddedName extends Playlist.Embedded.Name>(
|
154
151
|
embeddedName: EmbeddedName,
|
155
152
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
156
153
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
157
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
154
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
158
155
|
|
159
156
|
override deleteEmbeddedDocuments<EmbeddedName extends Playlist.Embedded.Name>(
|
160
157
|
embeddedName: EmbeddedName,
|
@@ -126,17 +126,14 @@ declare abstract class BaseRegion extends Document<"Region", BaseRegion.Schema,
|
|
126
126
|
override createEmbeddedDocuments<EmbeddedName extends RegionDocument.Embedded.Name>(
|
127
127
|
embeddedName: EmbeddedName,
|
128
128
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
129
|
-
|
130
|
-
|
131
|
-
// However this causes a number of errors.
|
132
|
-
operation?: object,
|
133
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
129
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
130
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
134
131
|
|
135
132
|
override updateEmbeddedDocuments<EmbeddedName extends RegionDocument.Embedded.Name>(
|
136
133
|
embeddedName: EmbeddedName,
|
137
134
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
138
135
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
139
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
136
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
140
137
|
|
141
138
|
override deleteEmbeddedDocuments<EmbeddedName extends RegionDocument.Embedded.Name>(
|
142
139
|
embeddedName: EmbeddedName,
|
@@ -147,17 +147,14 @@ declare abstract class BaseRollTable extends Document<"RollTable", BaseRollTable
|
|
147
147
|
override createEmbeddedDocuments<EmbeddedName extends RollTable.Embedded.Name>(
|
148
148
|
embeddedName: EmbeddedName,
|
149
149
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
150
|
-
|
151
|
-
|
152
|
-
// However this causes a number of errors.
|
153
|
-
operation?: object,
|
154
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
150
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
151
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
155
152
|
|
156
153
|
override updateEmbeddedDocuments<EmbeddedName extends RollTable.Embedded.Name>(
|
157
154
|
embeddedName: EmbeddedName,
|
158
155
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
159
156
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
160
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
157
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
161
158
|
|
162
159
|
override deleteEmbeddedDocuments<EmbeddedName extends RollTable.Embedded.Name>(
|
163
160
|
embeddedName: EmbeddedName,
|
@@ -250,17 +250,14 @@ declare abstract class BaseScene extends Document<"Scene", BaseScene.Schema, any
|
|
250
250
|
override createEmbeddedDocuments<EmbeddedName extends Scene.Embedded.Name>(
|
251
251
|
embeddedName: EmbeddedName,
|
252
252
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
253
|
-
|
254
|
-
|
255
|
-
// However this causes a number of errors.
|
256
|
-
operation?: object,
|
257
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
253
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
254
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
258
255
|
|
259
256
|
override updateEmbeddedDocuments<EmbeddedName extends Scene.Embedded.Name>(
|
260
257
|
embeddedName: EmbeddedName,
|
261
258
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
262
259
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
263
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
260
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
264
261
|
|
265
262
|
override deleteEmbeddedDocuments<EmbeddedName extends Scene.Embedded.Name>(
|
266
263
|
embeddedName: EmbeddedName,
|
@@ -290,17 +290,14 @@ declare abstract class BaseToken extends Document<"Token", BaseToken.Schema, any
|
|
290
290
|
override createEmbeddedDocuments<EmbeddedName extends TokenDocument.Embedded.Name>(
|
291
291
|
embeddedName: EmbeddedName,
|
292
292
|
data: Document.CreateDataForName<EmbeddedName>[] | undefined,
|
293
|
-
|
294
|
-
|
295
|
-
// However this causes a number of errors.
|
296
|
-
operation?: object,
|
297
|
-
): Promise<Array<Document.StoredForName<EmbeddedName>> | undefined>;
|
293
|
+
operation?: Document.Database.CreateOperationForName<EmbeddedName>,
|
294
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
298
295
|
|
299
296
|
override updateEmbeddedDocuments<EmbeddedName extends TokenDocument.Embedded.Name>(
|
300
297
|
embeddedName: EmbeddedName,
|
301
298
|
updates: Document.UpdateDataForName<EmbeddedName>[] | undefined,
|
302
299
|
operation?: Document.Database.UpdateOperationForName<EmbeddedName>,
|
303
|
-
): Promise<Array<Document.StoredForName<EmbeddedName
|
300
|
+
): Promise<Array<Document.StoredForName<EmbeddedName>>>;
|
304
301
|
|
305
302
|
override deleteEmbeddedDocuments<EmbeddedName extends TokenDocument.Embedded.Name>(
|
306
303
|
embeddedName: EmbeddedName,
|
@@ -331,6 +331,10 @@ export type DataType =
|
|
331
331
|
| "undefined"
|
332
332
|
| "Unknown";
|
333
333
|
|
334
|
+
export type ExpandKey<K extends PropertyKey> = K extends `${infer First}.${infer Rest}`
|
335
|
+
? { [_ in First]: ExpandKey<Rest> }
|
336
|
+
: { [_ in K]: unknown };
|
337
|
+
|
334
338
|
/**
|
335
339
|
* A helper function which tests whether an object has a property or nested property given a string key.
|
336
340
|
* The string key supports the notation a.b.c which would return true if object[a][b][c] exists
|
@@ -338,7 +342,7 @@ export type DataType =
|
|
338
342
|
* @param key - An object property with notation a.b.c
|
339
343
|
* @returns An indicator for whether the property exists
|
340
344
|
*/
|
341
|
-
export function hasProperty(object: object, key:
|
345
|
+
export function hasProperty<K extends PropertyKey>(object: object, key: K): object is ExpandKey<K>;
|
342
346
|
|
343
347
|
/**
|
344
348
|
* A helper function which searches through an object to retrieve a value by a string key.
|