@@ -1386,6 +1386,14 @@ interface ArrayBuffer {
1386
1386
slice ( begin : number , end ?: number ) : ArrayBuffer ;
1387
1387
}
1388
1388
1389
+ /**
1390
+ * Allowed ArrayBuffer types for the buffer of an ArrayBufferView and related Typed Arrays.
1391
+ */
1392
+ interface ArrayBufferTypes {
1393
+ ArrayBuffer : ArrayBuffer ;
1394
+ }
1395
+ type ArrayBufferLike = ArrayBufferTypes [ keyof ArrayBufferTypes ] ;
1396
+
1389
1397
interface ArrayBufferConstructor {
1390
1398
readonly prototype : ArrayBuffer ;
1391
1399
new ( byteLength : number ) : ArrayBuffer ;
@@ -1397,7 +1405,7 @@ interface ArrayBufferView {
1397
1405
/**
1398
1406
* The ArrayBuffer instance referenced by the array.
1399
1407
*/
1400
- buffer : ArrayBuffer ;
1408
+ buffer : ArrayBufferLike ;
1401
1409
1402
1410
/**
1403
1411
* The length in bytes of the array.
@@ -1539,7 +1547,7 @@ interface DataView {
1539
1547
}
1540
1548
1541
1549
interface DataViewConstructor {
1542
- new ( buffer : ArrayBuffer , byteOffset ?: number , byteLength ?: number ) : DataView ;
1550
+ new ( buffer : ArrayBufferLike , byteOffset ?: number , byteLength ?: number ) : DataView ;
1543
1551
}
1544
1552
declare const DataView : DataViewConstructor ;
1545
1553
@@ -1556,7 +1564,7 @@ interface Int8Array {
1556
1564
/**
1557
1565
* The ArrayBuffer instance referenced by the array.
1558
1566
*/
1559
- readonly buffer : ArrayBuffer ;
1567
+ readonly buffer : ArrayBufferLike ;
1560
1568
1561
1569
/**
1562
1570
* The length in bytes of the array.
@@ -1799,7 +1807,7 @@ interface Int8ArrayConstructor {
1799
1807
readonly prototype : Int8Array ;
1800
1808
new ( length : number ) : Int8Array ;
1801
1809
new ( array : ArrayLike < number > ) : Int8Array ;
1802
- new ( buffer : ArrayBuffer , byteOffset ?: number , length ?: number ) : Int8Array ;
1810
+ new ( buffer : ArrayBufferLike , byteOffset ?: number , length ?: number ) : Int8Array ;
1803
1811
1804
1812
/**
1805
1813
* The size in bytes of each element in the array.
@@ -1840,7 +1848,7 @@ interface Uint8Array {
1840
1848
/**
1841
1849
* The ArrayBuffer instance referenced by the array.
1842
1850
*/
1843
- readonly buffer : ArrayBuffer ;
1851
+ readonly buffer : ArrayBufferLike ;
1844
1852
1845
1853
/**
1846
1854
* The length in bytes of the array.
@@ -2084,7 +2092,7 @@ interface Uint8ArrayConstructor {
2084
2092
readonly prototype : Uint8Array ;
2085
2093
new ( length : number ) : Uint8Array ;
2086
2094
new ( array : ArrayLike < number > ) : Uint8Array ;
2087
- new ( buffer : ArrayBuffer , byteOffset ?: number , length ?: number ) : Uint8Array ;
2095
+ new ( buffer : ArrayBufferLike , byteOffset ?: number , length ?: number ) : Uint8Array ;
2088
2096
2089
2097
/**
2090
2098
* The size in bytes of each element in the array.
@@ -2125,7 +2133,7 @@ interface Uint8ClampedArray {
2125
2133
/**
2126
2134
* The ArrayBuffer instance referenced by the array.
2127
2135
*/
2128
- readonly buffer : ArrayBuffer ;
2136
+ readonly buffer : ArrayBufferLike ;
2129
2137
2130
2138
/**
2131
2139
* The length in bytes of the array.
@@ -2369,7 +2377,7 @@ interface Uint8ClampedArrayConstructor {
2369
2377
readonly prototype : Uint8ClampedArray ;
2370
2378
new ( length : number ) : Uint8ClampedArray ;
2371
2379
new ( array : ArrayLike < number > ) : Uint8ClampedArray ;
2372
- new ( buffer : ArrayBuffer , byteOffset ?: number , length ?: number ) : Uint8ClampedArray ;
2380
+ new ( buffer : ArrayBufferLike , byteOffset ?: number , length ?: number ) : Uint8ClampedArray ;
2373
2381
2374
2382
/**
2375
2383
* The size in bytes of each element in the array.
@@ -2409,7 +2417,7 @@ interface Int16Array {
2409
2417
/**
2410
2418
* The ArrayBuffer instance referenced by the array.
2411
2419
*/
2412
- readonly buffer : ArrayBuffer ;
2420
+ readonly buffer : ArrayBufferLike ;
2413
2421
2414
2422
/**
2415
2423
* The length in bytes of the array.
@@ -2653,7 +2661,7 @@ interface Int16ArrayConstructor {
2653
2661
readonly prototype : Int16Array ;
2654
2662
new ( length : number ) : Int16Array ;
2655
2663
new ( array : ArrayLike < number > ) : Int16Array ;
2656
- new ( buffer : ArrayBuffer , byteOffset ?: number , length ?: number ) : Int16Array ;
2664
+ new ( buffer : ArrayBufferLike , byteOffset ?: number , length ?: number ) : Int16Array ;
2657
2665
2658
2666
/**
2659
2667
* The size in bytes of each element in the array.
@@ -2694,7 +2702,7 @@ interface Uint16Array {
2694
2702
/**
2695
2703
* The ArrayBuffer instance referenced by the array.
2696
2704
*/
2697
- readonly buffer : ArrayBuffer ;
2705
+ readonly buffer : ArrayBufferLike ;
2698
2706
2699
2707
/**
2700
2708
* The length in bytes of the array.
@@ -2938,7 +2946,7 @@ interface Uint16ArrayConstructor {
2938
2946
readonly prototype : Uint16Array ;
2939
2947
new ( length : number ) : Uint16Array ;
2940
2948
new ( array : ArrayLike < number > ) : Uint16Array ;
2941
- new ( buffer : ArrayBuffer , byteOffset ?: number , length ?: number ) : Uint16Array ;
2949
+ new ( buffer : ArrayBufferLike , byteOffset ?: number , length ?: number ) : Uint16Array ;
2942
2950
2943
2951
/**
2944
2952
* The size in bytes of each element in the array.
@@ -2978,7 +2986,7 @@ interface Int32Array {
2978
2986
/**
2979
2987
* The ArrayBuffer instance referenced by the array.
2980
2988
*/
2981
- readonly buffer : ArrayBuffer ;
2989
+ readonly buffer : ArrayBufferLike ;
2982
2990
2983
2991
/**
2984
2992
* The length in bytes of the array.
@@ -3222,7 +3230,7 @@ interface Int32ArrayConstructor {
3222
3230
readonly prototype : Int32Array ;
3223
3231
new ( length : number ) : Int32Array ;
3224
3232
new ( array : ArrayLike < number > ) : Int32Array ;
3225
- new ( buffer : ArrayBuffer , byteOffset ?: number , length ?: number ) : Int32Array ;
3233
+ new ( buffer : ArrayBufferLike , byteOffset ?: number , length ?: number ) : Int32Array ;
3226
3234
3227
3235
/**
3228
3236
* The size in bytes of each element in the array.
@@ -3262,7 +3270,7 @@ interface Uint32Array {
3262
3270
/**
3263
3271
* The ArrayBuffer instance referenced by the array.
3264
3272
*/
3265
- readonly buffer : ArrayBuffer ;
3273
+ readonly buffer : ArrayBufferLike ;
3266
3274
3267
3275
/**
3268
3276
* The length in bytes of the array.
@@ -3506,7 +3514,7 @@ interface Uint32ArrayConstructor {
3506
3514
readonly prototype : Uint32Array ;
3507
3515
new ( length : number ) : Uint32Array ;
3508
3516
new ( array : ArrayLike < number > ) : Uint32Array ;
3509
- new ( buffer : ArrayBuffer , byteOffset ?: number , length ?: number ) : Uint32Array ;
3517
+ new ( buffer : ArrayBufferLike , byteOffset ?: number , length ?: number ) : Uint32Array ;
3510
3518
3511
3519
/**
3512
3520
* The size in bytes of each element in the array.
@@ -3546,7 +3554,7 @@ interface Float32Array {
3546
3554
/**
3547
3555
* The ArrayBuffer instance referenced by the array.
3548
3556
*/
3549
- readonly buffer : ArrayBuffer ;
3557
+ readonly buffer : ArrayBufferLike ;
3550
3558
3551
3559
/**
3552
3560
* The length in bytes of the array.
@@ -3790,7 +3798,7 @@ interface Float32ArrayConstructor {
3790
3798
readonly prototype : Float32Array ;
3791
3799
new ( length : number ) : Float32Array ;
3792
3800
new ( array : ArrayLike < number > ) : Float32Array ;
3793
- new ( buffer : ArrayBuffer , byteOffset ?: number , length ?: number ) : Float32Array ;
3801
+ new ( buffer : ArrayBufferLike , byteOffset ?: number , length ?: number ) : Float32Array ;
3794
3802
3795
3803
/**
3796
3804
* The size in bytes of each element in the array.
@@ -3831,7 +3839,7 @@ interface Float64Array {
3831
3839
/**
3832
3840
* The ArrayBuffer instance referenced by the array.
3833
3841
*/
3834
- readonly buffer : ArrayBuffer ;
3842
+ readonly buffer : ArrayBufferLike ;
3835
3843
3836
3844
/**
3837
3845
* The length in bytes of the array.
@@ -4075,7 +4083,7 @@ interface Float64ArrayConstructor {
4075
4083
readonly prototype : Float64Array ;
4076
4084
new ( length : number ) : Float64Array ;
4077
4085
new ( array : ArrayLike < number > ) : Float64Array ;
4078
- new ( buffer : ArrayBuffer , byteOffset ?: number , length ?: number ) : Float64Array ;
4086
+ new ( buffer : ArrayBufferLike , byteOffset ?: number , length ?: number ) : Float64Array ;
4079
4087
4080
4088
/**
4081
4089
* The size in bytes of each element in the array.
0 commit comments