@nxtedition/types 23.1.3 → 23.1.4
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/dist/common/index.d.ts +2 -0
- package/dist/common/index.js +2 -0
- package/dist/common/json-schema.d.ts +95 -0
- package/dist/common/json-schema.js +1 -0
- package/dist/common/nxtpression.d.ts +1 -1
- package/dist/common/print.d.ts +30 -0
- package/dist/common/print.js +1 -0
- package/dist/common/render-scene.d.ts +1 -0
- package/dist/common/settings.d.ts +11 -2
- package/dist/nxtpression.d.ts +337 -42
- package/dist/records/domains/connection/file/smb.d.ts +2 -0
- package/dist/records/domains/event.d.ts +6 -0
- package/dist/records/domains/gallery.d.ts +8 -0
- package/dist/records/domains/gallery.js +1 -0
- package/dist/records/domains/index.d.ts +5 -1
- package/dist/records/domains/index.js +2 -0
- package/dist/records/domains/role.d.ts +8 -0
- package/dist/records/domains/storage.d.ts +87 -0
- package/dist/records/domains/storage.js +1 -0
- package/dist/records/domains/template.d.ts +32 -0
- package/dist/records/exact/index.d.ts +6 -0
- package/dist/records/exact/monitor.d.ts +1 -0
- package/dist/records/validate/assert-guard.js +1549 -433
- package/dist/records/validate/assert.js +1557 -433
- package/dist/records/validate/is.js +85 -25
- package/dist/records/validate/schemas.d.ts +3 -10
- package/dist/records/validate/schemas.js +1241 -240
- package/dist/records/validate/stringify.js +137 -49
- package/dist/records/validate/utils.js +2 -2
- package/dist/records/validate/validate-equals.js +2087 -457
- package/dist/records/validate/validate.js +1414 -382
- package/package.json +1 -1
package/dist/nxtpression.d.ts
CHANGED
|
@@ -58,6 +58,7 @@ declare interface AssetCreatedProvidedRecord {
|
|
|
58
58
|
|
|
59
59
|
declare interface AssetDaemonRecord {
|
|
60
60
|
"user-notify"?: boolean;
|
|
61
|
+
validate?: boolean;
|
|
61
62
|
}
|
|
62
63
|
|
|
63
64
|
declare interface AssetDaemonUserNotifyStateRecord {
|
|
@@ -65,6 +66,11 @@ declare interface AssetDaemonUserNotifyStateRecord {
|
|
|
65
66
|
version?: number;
|
|
66
67
|
}
|
|
67
68
|
|
|
69
|
+
declare interface AssetDaemonValidateStateRecord {
|
|
70
|
+
since?: string | 0 | null;
|
|
71
|
+
version?: number;
|
|
72
|
+
}
|
|
73
|
+
|
|
68
74
|
declare interface AssetDeadlinesRecord {
|
|
69
75
|
value?: Nxtpression<string, {
|
|
70
76
|
id: string;
|
|
@@ -687,7 +693,7 @@ declare interface DeviceDomainStatusRecord {
|
|
|
687
693
|
version?: string;
|
|
688
694
|
}
|
|
689
695
|
|
|
690
|
-
declare interface DomainRecords extends AssetDomainRecords, AuthDomainRecords, BundleDomainRecords, CalendarEventDomainRecords, CloneDomainRecords, CommentReactionDomainRecords, CommentReadMarkDomainRecords, CommentDomainRecords, ConditionDomainRecords, ConnectionDomainRecords, ContactDomainRecords, DeepstreamDomainRecords, DesignDomainRecords, DeviceDomainRecords, EditDomainRecords, EventDomainRecords, FileDomainRecords, FolderDomainRecords, GeneralDomainRecords, HarvestDomainRecords, IngestclipDomainRecords, IngestScheduleDomainRecords, MediaDomainRecords, MonitorDomainRecords, NoteDomainRecords, PanelDomainRecords, PermissionDomainRecords, PipelinePresetDomainRecords, PipelineDomainRecords, PlanningDomainRecords, PrompterDomainRecords, PublishDomainRecords, PublishedDomainRecords, RenderPresetDomainRecords, RenderDomainRecords, RevsDomainRecords, RoleDomainRecords, SchemaDomainRecords, ScriptDomainRecords, SearchDomainRecords, SettingsDomainRecords, ShotboxDomainRecords, StoryboardDomainRecords, StreamDomainRecords, SubtitleStyleDomainRecords, SubtitleDomainRecords, TemplateDomainRecords, UserNotificationStatusDomainRecords, UserNotificationDomainRecords, UserDomainRecords, UsernameDomainRecords {
|
|
696
|
+
declare interface DomainRecords extends AssetDomainRecords, AuthDomainRecords, BundleDomainRecords, CalendarEventDomainRecords, CloneDomainRecords, CommentReactionDomainRecords, CommentReadMarkDomainRecords, CommentDomainRecords, ConditionDomainRecords, ConnectionDomainRecords, ContactDomainRecords, DeepstreamDomainRecords, DesignDomainRecords, DeviceDomainRecords, EditDomainRecords, EventDomainRecords, FileDomainRecords, FolderDomainRecords, GalleryDomainRecords, GeneralDomainRecords, HarvestDomainRecords, IngestclipDomainRecords, IngestScheduleDomainRecords, MediaDomainRecords, MonitorDomainRecords, NoteDomainRecords, PanelDomainRecords, PermissionDomainRecords, PipelinePresetDomainRecords, PipelineDomainRecords, PlanningDomainRecords, PrompterDomainRecords, PublishDomainRecords, PublishedDomainRecords, RenderPresetDomainRecords, RenderDomainRecords, RevsDomainRecords, RoleDomainRecords, SchemaDomainRecords, ScriptDomainRecords, SearchDomainRecords, SettingsDomainRecords, ShotboxDomainRecords, StorageDomainRecords, StoryboardDomainRecords, StreamDomainRecords, SubtitleStyleDomainRecords, SubtitleDomainRecords, TemplateDomainRecords, UserNotificationStatusDomainRecords, UserNotificationDomainRecords, UserDomainRecords, UsernameDomainRecords {
|
|
691
697
|
}
|
|
692
698
|
|
|
693
699
|
declare type Dynamic = false | string[];
|
|
@@ -761,8 +767,11 @@ declare type EmptyObject = {
|
|
|
761
767
|
|
|
762
768
|
// With `EmptyObject` only the first case is valid.
|
|
763
769
|
const bar1: EmptyObject = {}; // Pass
|
|
764
|
-
|
|
765
|
-
const
|
|
770
|
+
// @ts-expect-error
|
|
771
|
+
const bar2: EmptyObject = []; // Fail
|
|
772
|
+
// @ts-expect-error
|
|
773
|
+
const bar3: EmptyObject = 42; // Fail
|
|
774
|
+
// @ts-expect-error
|
|
766
775
|
const bar4: EmptyObject = {a: 1}; // Fail
|
|
767
776
|
```
|
|
768
777
|
|
|
@@ -807,6 +816,7 @@ declare interface EventDomainRecords {
|
|
|
807
816
|
":event.duration?": EventDurationRecord;
|
|
808
817
|
":event.children?": EventChildrenRecord;
|
|
809
818
|
":event.props?": EventPropsRecord;
|
|
819
|
+
":event.stats?": EventStatsRecord;
|
|
810
820
|
}
|
|
811
821
|
|
|
812
822
|
declare interface EventDurationRecord {
|
|
@@ -832,6 +842,7 @@ declare interface EventOverlayRecord {
|
|
|
832
842
|
declare type EventProps = {
|
|
833
843
|
source?: string;
|
|
834
844
|
cueCard?: boolean | string;
|
|
845
|
+
printRundownColor?: string;
|
|
835
846
|
startTime?: number;
|
|
836
847
|
shotboxGroup?: string | string[];
|
|
837
848
|
shotboxVisible?: boolean;
|
|
@@ -843,12 +854,17 @@ declare interface EventRecord {
|
|
|
843
854
|
start?: number | null;
|
|
844
855
|
end?: number | null;
|
|
845
856
|
duration?: number | null;
|
|
857
|
+
position?: string;
|
|
846
858
|
text?: string;
|
|
847
859
|
lang?: string;
|
|
848
860
|
style?: string;
|
|
849
861
|
styleOverrides?: SubtitleEventStyleOverrides;
|
|
850
862
|
}
|
|
851
863
|
|
|
864
|
+
declare interface EventStatsRecord {
|
|
865
|
+
type?: string;
|
|
866
|
+
}
|
|
867
|
+
|
|
852
868
|
declare interface EventTemplateRecord {
|
|
853
869
|
mixin?: string[];
|
|
854
870
|
properties?: object;
|
|
@@ -1010,9 +1026,11 @@ declare interface FileConnectionSmbRecord extends FileConnectionBase {
|
|
|
1010
1026
|
protocol?: "smb";
|
|
1011
1027
|
host?: string;
|
|
1012
1028
|
share?: string;
|
|
1029
|
+
root?: string;
|
|
1013
1030
|
workgroup?: string;
|
|
1014
1031
|
username?: string;
|
|
1015
1032
|
password?: string;
|
|
1033
|
+
createFolders?: boolean;
|
|
1016
1034
|
}
|
|
1017
1035
|
|
|
1018
1036
|
declare interface FileDomainRecords {
|
|
@@ -1184,6 +1202,16 @@ declare interface FormattedTextNodeContent {
|
|
|
1184
1202
|
format?: number;
|
|
1185
1203
|
}
|
|
1186
1204
|
|
|
1205
|
+
declare interface GalleryDomainRecord {
|
|
1206
|
+
sources?: {
|
|
1207
|
+
program?: string;
|
|
1208
|
+
};
|
|
1209
|
+
}
|
|
1210
|
+
|
|
1211
|
+
declare interface GalleryDomainRecords {
|
|
1212
|
+
":gallery": GalleryDomainRecord;
|
|
1213
|
+
}
|
|
1214
|
+
|
|
1187
1215
|
declare interface GeneralAssetRecord {
|
|
1188
1216
|
title?: string;
|
|
1189
1217
|
tags?: string;
|
|
@@ -1358,7 +1386,7 @@ declare interface HttpConnectionResponseHandler<ResOutput = undefined> {
|
|
|
1358
1386
|
|
|
1359
1387
|
@example
|
|
1360
1388
|
```
|
|
1361
|
-
import {If} from 'type-fest';
|
|
1389
|
+
import type {If} from 'type-fest';
|
|
1362
1390
|
|
|
1363
1391
|
type A = If<true, 'yes', 'no'>;
|
|
1364
1392
|
//=> 'yes'
|
|
@@ -1378,7 +1406,7 @@ declare interface HttpConnectionResponseHandler<ResOutput = undefined> {
|
|
|
1378
1406
|
|
|
1379
1407
|
@example
|
|
1380
1408
|
```
|
|
1381
|
-
import {If, IsAny, IsNever} from 'type-fest';
|
|
1409
|
+
import type {If, IsAny, IsNever} from 'type-fest';
|
|
1382
1410
|
|
|
1383
1411
|
type A = If<IsAny<unknown>, 'is any', 'not any'>;
|
|
1384
1412
|
//=> 'not any'
|
|
@@ -1389,7 +1417,7 @@ declare interface HttpConnectionResponseHandler<ResOutput = undefined> {
|
|
|
1389
1417
|
|
|
1390
1418
|
@example
|
|
1391
1419
|
```
|
|
1392
|
-
import {If, IsEqual} from 'type-fest';
|
|
1420
|
+
import type {If, IsEqual} from 'type-fest';
|
|
1393
1421
|
|
|
1394
1422
|
type IfEqual<T, U, IfBranch, ElseBranch> = If<IsEqual<T, U>, IfBranch, ElseBranch>;
|
|
1395
1423
|
|
|
@@ -1400,6 +1428,41 @@ declare interface HttpConnectionResponseHandler<ResOutput = undefined> {
|
|
|
1400
1428
|
//=> 'not equal'
|
|
1401
1429
|
```
|
|
1402
1430
|
|
|
1431
|
+
Note: Sometimes using the `If` type can make an implementation non–tail-recursive, which can impact performance. In such cases, it’s better to use a conditional directly. Refer to the following example:
|
|
1432
|
+
|
|
1433
|
+
@example
|
|
1434
|
+
```
|
|
1435
|
+
import type {If, IsEqual, StringRepeat} from 'type-fest';
|
|
1436
|
+
|
|
1437
|
+
type HundredZeroes = StringRepeat<'0', 100>;
|
|
1438
|
+
|
|
1439
|
+
// The following implementation is not tail recursive
|
|
1440
|
+
type Includes<S extends string, Char extends string> =
|
|
1441
|
+
S extends `${infer First}${infer Rest}`
|
|
1442
|
+
? If<IsEqual<First, Char>,
|
|
1443
|
+
'found',
|
|
1444
|
+
Includes<Rest, Char>>
|
|
1445
|
+
: 'not found';
|
|
1446
|
+
|
|
1447
|
+
// Hence, instantiations with long strings will fail
|
|
1448
|
+
// @ts-expect-error
|
|
1449
|
+
type Fails = Includes<HundredZeroes, '1'>;
|
|
1450
|
+
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
1451
|
+
// Error: Type instantiation is excessively deep and possibly infinite.
|
|
1452
|
+
|
|
1453
|
+
// However, if we use a simple conditional instead of `If`, the implementation becomes tail-recursive
|
|
1454
|
+
type IncludesWithoutIf<S extends string, Char extends string> =
|
|
1455
|
+
S extends `${infer First}${infer Rest}`
|
|
1456
|
+
? IsEqual<First, Char> extends true
|
|
1457
|
+
? 'found'
|
|
1458
|
+
: IncludesWithoutIf<Rest, Char>
|
|
1459
|
+
: 'not found';
|
|
1460
|
+
|
|
1461
|
+
// Now, instantiations with long strings will work
|
|
1462
|
+
type Works = IncludesWithoutIf<HundredZeroes, '1'>;
|
|
1463
|
+
//=> 'not found'
|
|
1464
|
+
```
|
|
1465
|
+
|
|
1403
1466
|
@category Type Guard
|
|
1404
1467
|
@category Utilities
|
|
1405
1468
|
*/
|
|
@@ -1483,7 +1546,7 @@ declare type InternalIsUnion<T, U = T> =
|
|
|
1483
1546
|
IsNever<T> extends true
|
|
1484
1547
|
? false
|
|
1485
1548
|
: T extends any
|
|
1486
|
-
?
|
|
1549
|
+
? IsEqual<U, T> extends true
|
|
1487
1550
|
? false
|
|
1488
1551
|
: true
|
|
1489
1552
|
: never
|
|
@@ -1503,15 +1566,54 @@ declare type InternalIsUnion<T, U = T> =
|
|
|
1503
1566
|
import type {IsEmptyObject} from 'type-fest';
|
|
1504
1567
|
|
|
1505
1568
|
type Pass = IsEmptyObject<{}>; //=> true
|
|
1506
|
-
type
|
|
1507
|
-
type
|
|
1569
|
+
type Fail1 = IsEmptyObject<[]>; //=> false
|
|
1570
|
+
type Fail2 = IsEmptyObject<null>; //=> false
|
|
1508
1571
|
```
|
|
1509
1572
|
|
|
1510
|
-
@see EmptyObject
|
|
1573
|
+
@see {@link EmptyObject}
|
|
1511
1574
|
@category Object
|
|
1512
1575
|
*/
|
|
1513
1576
|
declare type IsEmptyObject<T> = T extends EmptyObject_2 ? true : false;
|
|
1514
1577
|
|
|
1578
|
+
/**
|
|
1579
|
+
Returns a boolean for whether the two given types are equal.
|
|
1580
|
+
|
|
1581
|
+
@link https://github.com/microsoft/TypeScript/issues/27024#issuecomment-421529650
|
|
1582
|
+
@link https://stackoverflow.com/questions/68961864/how-does-the-equals-work-in-typescript/68963796#68963796
|
|
1583
|
+
|
|
1584
|
+
Use-cases:
|
|
1585
|
+
- If you want to make a conditional branch based on the result of a comparison of two types.
|
|
1586
|
+
|
|
1587
|
+
@example
|
|
1588
|
+
```
|
|
1589
|
+
import type {IsEqual} from 'type-fest';
|
|
1590
|
+
|
|
1591
|
+
// This type returns a boolean for whether the given array includes the given item.
|
|
1592
|
+
// `IsEqual` is used to compare the given array at position 0 and the given item and then return true if they are equal.
|
|
1593
|
+
type Includes<Value extends readonly any[], Item> =
|
|
1594
|
+
Value extends readonly [Value[0], ...infer rest]
|
|
1595
|
+
? IsEqual<Value[0], Item> extends true
|
|
1596
|
+
? true
|
|
1597
|
+
: Includes<rest, Item>
|
|
1598
|
+
: false;
|
|
1599
|
+
```
|
|
1600
|
+
|
|
1601
|
+
@category Type Guard
|
|
1602
|
+
@category Utilities
|
|
1603
|
+
*/
|
|
1604
|
+
declare type IsEqual<A, B> =
|
|
1605
|
+
[A] extends [B]
|
|
1606
|
+
? [B] extends [A]
|
|
1607
|
+
? _IsEqual<A, B>
|
|
1608
|
+
: false
|
|
1609
|
+
: false;
|
|
1610
|
+
|
|
1611
|
+
declare type _IsEqual<A, B> =
|
|
1612
|
+
(<G>() => G extends A & G | G ? 1 : 2) extends
|
|
1613
|
+
(<G>() => G extends B & G | G ? 1 : 2)
|
|
1614
|
+
? true
|
|
1615
|
+
: false;
|
|
1616
|
+
|
|
1515
1617
|
/**
|
|
1516
1618
|
Returns a boolean for whether the given type is `never`.
|
|
1517
1619
|
|
|
@@ -1525,29 +1627,41 @@ declare type IsEmptyObject<T> = T extends EmptyObject_2 ? true : false;
|
|
|
1525
1627
|
```
|
|
1526
1628
|
import type {IsNever, And} from 'type-fest';
|
|
1527
1629
|
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1630
|
+
type A = IsNever<never>;
|
|
1631
|
+
//=> true
|
|
1632
|
+
|
|
1633
|
+
type B = IsNever<any>;
|
|
1634
|
+
//=> false
|
|
1635
|
+
|
|
1636
|
+
type C = IsNever<unknown>;
|
|
1637
|
+
//=> false
|
|
1638
|
+
|
|
1639
|
+
type D = IsNever<never[]>;
|
|
1640
|
+
//=> false
|
|
1641
|
+
|
|
1642
|
+
type E = IsNever<object>;
|
|
1643
|
+
//=> false
|
|
1644
|
+
|
|
1645
|
+
type F = IsNever<string>;
|
|
1646
|
+
//=> false
|
|
1647
|
+
```
|
|
1648
|
+
|
|
1649
|
+
@example
|
|
1650
|
+
```
|
|
1651
|
+
import type {IsNever} from 'type-fest';
|
|
1652
|
+
|
|
1653
|
+
type IsTrue<T> = T extends true ? true : false;
|
|
1654
|
+
|
|
1655
|
+
// When a distributive conditional is instantiated with `never`, the entire conditional results in `never`.
|
|
1656
|
+
type A = IsTrue<never>;
|
|
1547
1657
|
//=> never
|
|
1548
1658
|
|
|
1549
|
-
|
|
1550
|
-
|
|
1659
|
+
// If you don't want that behaviour, you can explicitly add an `IsNever` check before the distributive conditional.
|
|
1660
|
+
type IsTrueFixed<T> =
|
|
1661
|
+
IsNever<T> extends true ? false : T extends true ? true : false;
|
|
1662
|
+
|
|
1663
|
+
type B = IsTrueFixed<never>;
|
|
1664
|
+
//=> false
|
|
1551
1665
|
```
|
|
1552
1666
|
|
|
1553
1667
|
@category Type Guard
|
|
@@ -1821,6 +1935,7 @@ declare type Minimum<Value extends number | bigint> = TagBase<{
|
|
|
1821
1935
|
declare interface MiscRecords {
|
|
1822
1936
|
"asset-daemon": AssetDaemonRecord;
|
|
1823
1937
|
"asset-daemon:user-notify.state": AssetDaemonUserNotifyStateRecord;
|
|
1938
|
+
"asset-daemon:validate.state": AssetDaemonValidateStateRecord;
|
|
1824
1939
|
"deepstream-replicator.stats?": DeepstreamReplicatorStatsRecord;
|
|
1825
1940
|
}
|
|
1826
1941
|
|
|
@@ -2000,7 +2115,7 @@ declare interface NxtError {
|
|
|
2000
2115
|
errors?: NxtError[] | null;
|
|
2001
2116
|
}
|
|
2002
2117
|
|
|
2003
|
-
declare type Nxtpression<ReturnValue = unknown, Context extends
|
|
2118
|
+
declare type Nxtpression<ReturnValue = unknown, Context extends Record<string, unknown> = Record<string, unknown>> = {
|
|
2004
2119
|
/**
|
|
2005
2120
|
* TS-HACK: this property doesn't really exist on the nxtpression string,
|
|
2006
2121
|
* it is only here to make sure the generic Context won't get stripped.
|
|
@@ -2060,6 +2175,7 @@ declare interface NxtStatusMessage {
|
|
|
2060
2175
|
title: string;
|
|
2061
2176
|
url: string;
|
|
2062
2177
|
};
|
|
2178
|
+
data?: unknown;
|
|
2063
2179
|
}
|
|
2064
2180
|
|
|
2065
2181
|
declare interface NxtStatusNode extends NxtStatusObject {
|
|
@@ -2278,6 +2394,10 @@ declare interface Operator<T, R> {
|
|
|
2278
2394
|
declare interface OperatorFunction<T, R> extends UnaryFunction<Observable<T>, Observable<R>> {
|
|
2279
2395
|
}
|
|
2280
2396
|
|
|
2397
|
+
declare type PageOrientation = "landscape" | "portrait";
|
|
2398
|
+
|
|
2399
|
+
declare type PageSize = "A5" | "A4" | "A3";
|
|
2400
|
+
|
|
2281
2401
|
declare interface PanelDomainPanelRecord {
|
|
2282
2402
|
title?: string;
|
|
2283
2403
|
/**
|
|
@@ -2399,6 +2519,39 @@ declare interface PlanningRecord {
|
|
|
2399
2519
|
deadline?: string | null;
|
|
2400
2520
|
}
|
|
2401
2521
|
|
|
2522
|
+
declare type PrintOptionalScriptNodes = "event" | "event-data" | "comment" | "heading" | "list" | "quote" | "paragraph" | "horizontalrule";
|
|
2523
|
+
|
|
2524
|
+
declare type PrintOptions = PrintScriptOptions | PrintRundownOptions;
|
|
2525
|
+
|
|
2526
|
+
declare interface PrintOptionsBase {
|
|
2527
|
+
title: string;
|
|
2528
|
+
horizontalMargin: number;
|
|
2529
|
+
pageSize: PageSize;
|
|
2530
|
+
orientation: PageOrientation;
|
|
2531
|
+
fontSize: number;
|
|
2532
|
+
fontFamily?: string;
|
|
2533
|
+
hide: PrintOptionalScriptNodes[];
|
|
2534
|
+
}
|
|
2535
|
+
|
|
2536
|
+
declare interface PrintRundownColumn {
|
|
2537
|
+
key: "id" | "title" | "time" | "duration" | "position" | "accDuration" | "type";
|
|
2538
|
+
label: string;
|
|
2539
|
+
width: string;
|
|
2540
|
+
textAlign: "right" | "left" | "center";
|
|
2541
|
+
}
|
|
2542
|
+
|
|
2543
|
+
declare interface PrintRundownOptions extends PrintOptionsBase {
|
|
2544
|
+
type: "rundown";
|
|
2545
|
+
columns: PrintRundownColumn[];
|
|
2546
|
+
rangeStart?: number;
|
|
2547
|
+
rangeEnd?: number;
|
|
2548
|
+
hide: Exclude<PrintOptionalScriptNodes, "event-data">[];
|
|
2549
|
+
}
|
|
2550
|
+
|
|
2551
|
+
declare interface PrintScriptOptions extends PrintOptionsBase {
|
|
2552
|
+
type: "script";
|
|
2553
|
+
}
|
|
2554
|
+
|
|
2402
2555
|
declare interface PromotedTag {
|
|
2403
2556
|
name: string | null;
|
|
2404
2557
|
icon: string | null;
|
|
@@ -2834,6 +2987,7 @@ declare interface RenderSceneObject {
|
|
|
2834
2987
|
transcribe?: {
|
|
2835
2988
|
language?: string;
|
|
2836
2989
|
pan?: number[];
|
|
2990
|
+
diarization?: boolean;
|
|
2837
2991
|
};
|
|
2838
2992
|
/** @deprecated Use video.crop instead */
|
|
2839
2993
|
crop?: RenderSceneCrop;
|
|
@@ -2898,13 +3052,23 @@ declare interface RevsRecord {
|
|
|
2898
3052
|
}
|
|
2899
3053
|
|
|
2900
3054
|
declare interface RoleDomainRecords {
|
|
3055
|
+
":role": RoleRecord;
|
|
3056
|
+
":role.users?": RoleUsersRecord;
|
|
2901
3057
|
":role.tags": RoleTagsRecord;
|
|
2902
3058
|
}
|
|
2903
3059
|
|
|
3060
|
+
declare type RoleRecord = {
|
|
3061
|
+
permissions?: Record<string, string[]>;
|
|
3062
|
+
};
|
|
3063
|
+
|
|
2904
3064
|
declare interface RoleTagsRecord {
|
|
2905
3065
|
value: string[];
|
|
2906
3066
|
}
|
|
2907
3067
|
|
|
3068
|
+
declare type RoleUsersRecord = {
|
|
3069
|
+
value?: string[];
|
|
3070
|
+
};
|
|
3071
|
+
|
|
2908
3072
|
declare interface RpcPermission {
|
|
2909
3073
|
type: "rpc";
|
|
2910
3074
|
method: string;
|
|
@@ -3251,6 +3415,7 @@ declare interface Settings {
|
|
|
3251
3415
|
sortBy?: "index" | "title";
|
|
3252
3416
|
showPreview?: boolean;
|
|
3253
3417
|
};
|
|
3418
|
+
contentMaxWidth?: number;
|
|
3254
3419
|
colorTags?: PromotedTag[];
|
|
3255
3420
|
readType?: "characters" | "words" | "wordsPerMinute";
|
|
3256
3421
|
readRate?: number;
|
|
@@ -3436,6 +3601,7 @@ declare interface Settings {
|
|
|
3436
3601
|
};
|
|
3437
3602
|
print?: {
|
|
3438
3603
|
fontFamilies?: string[];
|
|
3604
|
+
presets?: Array<PrintOptions>;
|
|
3439
3605
|
};
|
|
3440
3606
|
hiddenPreviews?: Array<{
|
|
3441
3607
|
id?: string;
|
|
@@ -3451,6 +3617,7 @@ declare interface Settings {
|
|
|
3451
3617
|
downloadPath?: string;
|
|
3452
3618
|
renderPath?: string;
|
|
3453
3619
|
renderPresetPath?: string;
|
|
3620
|
+
renderPresets?: string[];
|
|
3454
3621
|
videoRenderPreset?: string;
|
|
3455
3622
|
imageRenderPreset?: string;
|
|
3456
3623
|
audioRenderPreset?: string;
|
|
@@ -3461,6 +3628,9 @@ declare interface Settings {
|
|
|
3461
3628
|
template?: string;
|
|
3462
3629
|
};
|
|
3463
3630
|
};
|
|
3631
|
+
ograf?: {
|
|
3632
|
+
template?: string;
|
|
3633
|
+
};
|
|
3464
3634
|
rive?: {
|
|
3465
3635
|
template?: string;
|
|
3466
3636
|
};
|
|
@@ -3536,8 +3706,10 @@ declare interface Settings {
|
|
|
3536
3706
|
layout?: string;
|
|
3537
3707
|
};
|
|
3538
3708
|
performance?: {
|
|
3539
|
-
/** List of message identifiers to ignore
|
|
3540
|
-
|
|
3709
|
+
/** List of message identifiers to ignore warnings (format: "serviceName:messageText") */
|
|
3710
|
+
ignoredWarnings?: string[];
|
|
3711
|
+
/** List of message identifiers to ignore errors (format: "serviceName:messageText") */
|
|
3712
|
+
ignoredErrors?: string[];
|
|
3541
3713
|
};
|
|
3542
3714
|
app?: {
|
|
3543
3715
|
enableUpdate?: boolean;
|
|
@@ -3622,16 +3794,12 @@ declare interface ShotboxStreamGroup {
|
|
|
3622
3794
|
```
|
|
3623
3795
|
import type {SingleKeyObject} from 'type-fest';
|
|
3624
3796
|
|
|
3625
|
-
|
|
3797
|
+
declare function someFunction<T>(parameter: SingleKeyObject<T>): void;
|
|
3626
3798
|
|
|
3627
|
-
someFunction({
|
|
3628
|
-
value: true
|
|
3629
|
-
});
|
|
3799
|
+
someFunction({value: true});
|
|
3630
3800
|
|
|
3631
|
-
|
|
3632
|
-
|
|
3633
|
-
otherKey: true
|
|
3634
|
-
});
|
|
3801
|
+
// @ts-expect-error
|
|
3802
|
+
someFunction({value: true, otherKey: true});
|
|
3635
3803
|
// Error: Argument of type '{value: boolean; otherKey: boolean}' is not assignable to parameter of type 'never'.ts(2345)
|
|
3636
3804
|
```
|
|
3637
3805
|
|
|
@@ -3646,6 +3814,48 @@ declare type Spread<T1, T2> = Omit<T2, keyof T1> & T1;
|
|
|
3646
3814
|
|
|
3647
3815
|
declare type StatsRecord = Union["stats"];
|
|
3648
3816
|
|
|
3817
|
+
declare interface StorageDomainRecord {
|
|
3818
|
+
zone: string;
|
|
3819
|
+
hostname: string | null;
|
|
3820
|
+
port?: number | null;
|
|
3821
|
+
location?: string;
|
|
3822
|
+
cache?: boolean | null;
|
|
3823
|
+
allows?: string[];
|
|
3824
|
+
capacity?: number | null;
|
|
3825
|
+
rxBytesSecMax?: number | null;
|
|
3826
|
+
txBytesSecMax?: number | null;
|
|
3827
|
+
rxBytesSecLimit?: number | null;
|
|
3828
|
+
txBytesSecLimit?: number | null;
|
|
3829
|
+
}
|
|
3830
|
+
|
|
3831
|
+
declare interface StorageDomainRecords {
|
|
3832
|
+
":storage": StorageDomainRecord;
|
|
3833
|
+
":storage.stats": StorageStatsDomainRecord;
|
|
3834
|
+
":storage-zone": StorageZoneDomainRecord;
|
|
3835
|
+
}
|
|
3836
|
+
|
|
3837
|
+
declare interface StorageFsStats {
|
|
3838
|
+
concurrency?: number;
|
|
3839
|
+
path?: string;
|
|
3840
|
+
snapshot?: number | null;
|
|
3841
|
+
available?: number;
|
|
3842
|
+
free?: number;
|
|
3843
|
+
used?: number;
|
|
3844
|
+
size?: number;
|
|
3845
|
+
state?: string;
|
|
3846
|
+
[key: string]: unknown;
|
|
3847
|
+
}
|
|
3848
|
+
|
|
3849
|
+
declare interface StorageIoQueues {
|
|
3850
|
+
highest: number;
|
|
3851
|
+
higher: number;
|
|
3852
|
+
high: number;
|
|
3853
|
+
normal: number;
|
|
3854
|
+
low: number;
|
|
3855
|
+
lower: number;
|
|
3856
|
+
lowest: number;
|
|
3857
|
+
}
|
|
3858
|
+
|
|
3649
3859
|
declare interface StorageLocationsRecord {
|
|
3650
3860
|
[key: string]: StorageLocationsRecordEntry;
|
|
3651
3861
|
}
|
|
@@ -3675,6 +3885,58 @@ declare interface StorageRecords {
|
|
|
3675
3885
|
"storage.zones?": StorageZonesRecord;
|
|
3676
3886
|
}
|
|
3677
3887
|
|
|
3888
|
+
declare interface StorageS3Stats {
|
|
3889
|
+
bucket?: string;
|
|
3890
|
+
region?: string;
|
|
3891
|
+
endpoint?: string;
|
|
3892
|
+
path?: string;
|
|
3893
|
+
storageClass?: string;
|
|
3894
|
+
[key: string]: unknown;
|
|
3895
|
+
}
|
|
3896
|
+
|
|
3897
|
+
declare interface StorageStatsDomainRecord {
|
|
3898
|
+
id: string;
|
|
3899
|
+
location: string;
|
|
3900
|
+
timestamp: string;
|
|
3901
|
+
type: string;
|
|
3902
|
+
zone: string;
|
|
3903
|
+
origin: string;
|
|
3904
|
+
free: number | null;
|
|
3905
|
+
size: number | null;
|
|
3906
|
+
available: number | null;
|
|
3907
|
+
cache: boolean | null;
|
|
3908
|
+
capacity: number | null;
|
|
3909
|
+
limiter: {
|
|
3910
|
+
readBytesPerSecond: number | undefined;
|
|
3911
|
+
writeBytesPerSecond: number | undefined;
|
|
3912
|
+
};
|
|
3913
|
+
http: {
|
|
3914
|
+
downstreamConnected: number;
|
|
3915
|
+
upstreamConnected: number;
|
|
3916
|
+
pending: number;
|
|
3917
|
+
completed: number;
|
|
3918
|
+
failed: number;
|
|
3919
|
+
};
|
|
3920
|
+
io: {
|
|
3921
|
+
read: {
|
|
3922
|
+
bytesPerSecond: number;
|
|
3923
|
+
pending: number;
|
|
3924
|
+
queues: StorageIoQueues;
|
|
3925
|
+
};
|
|
3926
|
+
write: {
|
|
3927
|
+
bytesPerSecond: number;
|
|
3928
|
+
pending: number;
|
|
3929
|
+
queues: StorageIoQueues;
|
|
3930
|
+
};
|
|
3931
|
+
};
|
|
3932
|
+
fs?: StorageFsStats;
|
|
3933
|
+
s3?: StorageS3Stats;
|
|
3934
|
+
}
|
|
3935
|
+
|
|
3936
|
+
declare interface StorageZoneDomainRecord {
|
|
3937
|
+
priority?: number;
|
|
3938
|
+
}
|
|
3939
|
+
|
|
3678
3940
|
declare interface StorageZonesRecord {
|
|
3679
3941
|
[key: string]: {
|
|
3680
3942
|
priority: number;
|
|
@@ -4159,6 +4421,39 @@ declare interface TemplateDomainRecords {
|
|
|
4159
4421
|
|
|
4160
4422
|
declare interface TemplateProperty {
|
|
4161
4423
|
path?: string;
|
|
4424
|
+
type?: string;
|
|
4425
|
+
label?: string;
|
|
4426
|
+
defaultValue?: string;
|
|
4427
|
+
widget?: {
|
|
4428
|
+
type: string;
|
|
4429
|
+
};
|
|
4430
|
+
properties?: object;
|
|
4431
|
+
items?: {
|
|
4432
|
+
properties?: Record<string, TemplatePropertySchema>;
|
|
4433
|
+
};
|
|
4434
|
+
render?: {
|
|
4435
|
+
type: "image";
|
|
4436
|
+
profile?: {
|
|
4437
|
+
format?: string;
|
|
4438
|
+
video?: {
|
|
4439
|
+
width: number;
|
|
4440
|
+
height: number;
|
|
4441
|
+
fit: "cover";
|
|
4442
|
+
};
|
|
4443
|
+
};
|
|
4444
|
+
};
|
|
4445
|
+
}
|
|
4446
|
+
|
|
4447
|
+
declare interface TemplatePropertySchema {
|
|
4448
|
+
path?: string;
|
|
4449
|
+
type?: string;
|
|
4450
|
+
label?: string;
|
|
4451
|
+
defaultValue?: string;
|
|
4452
|
+
widget?: {
|
|
4453
|
+
type: string;
|
|
4454
|
+
};
|
|
4455
|
+
items?: TemplatePropertySchema;
|
|
4456
|
+
properties?: Record<string, TemplatePropertySchema>;
|
|
4162
4457
|
}
|
|
4163
4458
|
|
|
4164
4459
|
declare interface TemplateRecord {
|
|
@@ -10,11 +10,13 @@ export interface EventDomainRecords {
|
|
|
10
10
|
":event.duration?": EventDurationRecord;
|
|
11
11
|
":event.children?": EventChildrenRecord;
|
|
12
12
|
":event.props?": EventPropsRecord;
|
|
13
|
+
":event.stats?": EventStatsRecord;
|
|
13
14
|
}
|
|
14
15
|
export interface EventRecord {
|
|
15
16
|
start?: number | null;
|
|
16
17
|
end?: number | null;
|
|
17
18
|
duration?: number | null;
|
|
19
|
+
position?: string;
|
|
18
20
|
text?: string;
|
|
19
21
|
lang?: string;
|
|
20
22
|
style?: string;
|
|
@@ -40,11 +42,15 @@ export interface EventChildrenRecord {
|
|
|
40
42
|
type EventProps = {
|
|
41
43
|
source?: string;
|
|
42
44
|
cueCard?: boolean | string;
|
|
45
|
+
printRundownColor?: string;
|
|
43
46
|
startTime?: number;
|
|
44
47
|
shotboxGroup?: string | string[];
|
|
45
48
|
shotboxVisible?: boolean;
|
|
46
49
|
};
|
|
47
50
|
export type EventPropsRecord = EventProps & Record<Exclude<string, keyof EventProps>, JsonValue>;
|
|
51
|
+
export interface EventStatsRecord {
|
|
52
|
+
type?: string;
|
|
53
|
+
}
|
|
48
54
|
export interface EventOverlayRecord {
|
|
49
55
|
[eventId: string]: {
|
|
50
56
|
data: EventPropsRecord;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|