1
- import { ScoreboardObjective , ScoreboardIdentity , Entity } from "@minecraft/server" ;
2
- //////////////////////////////////////
3
- // NBT-SERIALIZER.D.TS
4
- //////////////////////////////////////
5
-
6
- type StringBase = 16 | 8 | 32 ;
7
- type IStreamType = number | number | { buffer : ArrayBuffer } ;
8
- declare class Stream extends DataView {
9
- constructor ( buffer : ArrayBuffer | number , offset ?: number )
10
- protected __offset__ : number
11
- readonly offset : number
12
- readonly size : number
13
- readonly EndOfStream : boolean
14
- setOffset ( num : number ) : void
15
- static fromString ( text : string , options ?: { bufferLength ?: number , base ?:StringBase } , ...params : any ) : Stream
16
- /**@param {Stream } stream @param {8|16|32 } base*/
17
- static toString ( stream : Stream , base ?: StringBase ) : string
18
- toString ( base ?: StringBase ) : string
19
- }
20
- declare class BinaryStreamWriter extends Stream {
21
- constructor ( stream : IStreamType )
22
- writeBytes ( buffer : ArrayBuffer , length ?:number ) : number
23
- writeString ( text : string , base ?: StringBase ) : number
24
- writeByte ( num : number ) : number
25
- writeUint8 ( num : number ) : number
26
- writeInt8 ( num : number ) : number
27
- writeInt16 ( num : number ) : number
28
- writeUint16 ( num : number ) : number
29
- writeInt32 ( num : number ) : number
30
- writeUint32 ( num : number ) : number
31
- writeFloat32 ( num : number ) : number
32
- writeFloat64 ( num : number ) : number
33
- static fromString ( text : string , options ?: { bufferLength ?: number , base ?:StringBase } , ...params : any ) : BinaryStreamWriter
34
- }
35
- declare class BinaryStreamReader extends Stream {
36
- constructor ( stream : IStreamType )
37
- readBytes ( length ?: number ) : Uint8Array
38
- readString ( length : number , base ?: StringBase ) :string
39
- readByte ( ) :number
40
- readUint8 ( ) :number
41
- readInt8 ( ) :number
42
- readInt16 ( ) :number
43
- readUint16 ( ) :number
44
- readInt32 ( ) :number
45
- readUint32 ( ) :number
46
- readFloat32 ( ) :number
47
- readFloat64 ( ) :number
48
- static fromString ( text : string , options ?: { bufferLength ?: number , base ?:StringBase } , ...params : any ) : BinaryStreamReader
49
- }
50
- declare class EndOfStreamError extends Error { }
51
- declare enum NBTTypes {
52
- "EndOfCompoud" = 0 ,
53
- "Compoud" = 1 ,
54
- "Array" = 2 ,
55
- "TypedArray" = 3 ,
56
- "Uint8" = 4 ,
57
- "Uint16" = 5 ,
58
- "Int32" = 6 ,
59
- "Double" = 7 ,
60
- "String" = 8 ,
61
- "Empty" = 9 ,
62
- "Boolean" = 10
63
- }
64
- declare class NBTStreamWriter extends BinaryStreamWriter {
65
- constructor ( stream : IStreamType , options ?: object | NBTStreamWriter )
66
- protected __options__ : NBTWriterOptions ;
67
- writeTypedArray < t > ( array : Array < t > ) : number
68
- writeBoolean ( bool : boolean ) :number
69
- writeString ( text : string ) : number
70
- writeArray ( array : any [ ] ) : number
71
- writeCompoud ( object : object ) : number
72
- writeEmpty ( ) : number
73
- writeType ( type : NBTTypes ) : number
74
- static fromString ( text : string , options ?: { bufferLength ?: number , base ?:StringBase } , ...params : any ) : NBTStreamWriter
75
- }
76
- declare class NBTStreamReader extends BinaryStreamReader {
77
- constructor ( stream : IStreamType , options ?: object | NBTReaderOptions )
78
- protected __options__ : NBTReaderOptions ;
79
- readTypedArray ( ) : Array < any >
80
- readBoolean ( ) : boolean
81
- readString ( ) : string
82
- readArray ( ) : any [ ]
83
- readCompoud ( ) : object
84
- readEmpty ( ) : undefined
85
- readType ( ) : NBTTypes
86
- static fromString ( text : string , options ?: { bufferLength ?: number , base ?:StringBase } , ...params : any ) : NBTStreamReader
87
- }
88
- declare const NBT : {
89
- ReadNBT ( stream : NBTStreamReader ) : any
90
- WriteNBT ( data : any , stream : NBTStreamWriter , type ?: NBTTypes ) : number
91
- getType ( data : any ) : NBTTypes
92
- stringify ( object :any , options ?: NBTWriterOptions ) : string
93
- parse ( string : string , options ?: NBTReaderOptions ) : any
94
- createNewWriters < t extends Partial < typeof defaultWriters > > ( object ?: t ) : t & typeof defaultWriters
95
- createNewReaders < t extends Partial < typeof defualtReaders > > ( object ?: t ) : t & typeof defualtReaders
96
- }
97
- type WriterCall = ( stream : NBTStreamWriter , data : any ) => number
98
- type ReaderCall = ( stream : NBTStreamReader ) => any
99
- declare const defaultWriters : {
100
- [ NBTTypes . Compoud ] :WriterCall ,
101
- [ NBTTypes . Empty ] :WriterCall ,
102
- [ NBTTypes . Array ] :WriterCall ,
103
- [ NBTTypes . String ] :WriterCall ,
104
- [ NBTTypes . Boolean ] :WriterCall ,
105
- [ NBTTypes . Uint8 ] :WriterCall ,
106
- [ NBTTypes . Uint16 ] :WriterCall ,
107
- [ NBTTypes . Int32 ] :WriterCall ,
108
- [ NBTTypes . Double ] :WriterCall ,
109
- [ NBTTypes . TypedArray ] :WriterCall
110
- }
111
- declare const defualtReaders : {
112
- [ NBTTypes . Compoud ] :ReaderCall ,
113
- [ NBTTypes . Empty ] :ReaderCall ,
114
- [ NBTTypes . Array ] :ReaderCall ,
115
- [ NBTTypes . String ] :ReaderCall ,
116
- [ NBTTypes . Boolean ] :ReaderCall ,
117
- [ NBTTypes . Uint8 ] :ReaderCall ,
118
- [ NBTTypes . Uint16 ] :ReaderCall ,
119
- [ NBTTypes . Int32 ] :ReaderCall ,
120
- [ NBTTypes . Double ] :ReaderCall ,
121
- [ NBTTypes . TypedArray ] :ReaderCall
122
- }
123
- declare class NBTStreamOptions {
124
- nbtTypes : object & NBTTypes
125
- getType :( data : any ) => NBTStreamOptions [ "nbtTypes" ] [ keyof NBTStreamOptions [ "nbtTypes" ] ]
126
- }
127
- declare class NBTWriterOptions extends NBTStreamOptions {
128
- writers : ReturnType < typeof NBT [ "createNewWriters" ] > ;
129
- }
130
- declare class NBTReaderOptions extends NBTStreamOptions {
131
- readers : ReturnType < typeof NBT [ "createNewReaders" ] > ;
132
- }
133
-
134
-
135
-
136
-
137
- //////////////////////////////////////
138
- // DATABASE.JS
139
- //////////////////////////////////////
140
- export enum DatabaseSavingModes {
141
- OneTimeSave = "OneTimeSave" ,
142
- EndTickSave = "EndTickSave" ,
143
- TickInterval = "TickInterval"
144
- }
145
- export enum ChangeAction {
146
- Change = 0 ,
147
- Remove = 1
148
- }
149
- /**@extends {Map<string,any> }*/
150
- declare class ScoreboardDatabaseManager extends Map < string , any > {
151
- private _saveMode_ : DatabaseSavingModes ;
152
- private _loadingPromise_ ?: Promise < this> ;
153
- private hasChanges : boolean ;
154
- private readonly _scoreboard_ : ScoreboardObjective ;
155
- protected readonly _source_ : Map < string , string | ScoreboardIdentity | Entity > ;
156
- protected readonly _parser_ : { stringify :( data : any ) => string , parse :( data : string ) => any } ;
157
- constructor ( objective : string | ScoreboardObjective , saveMode ?: DatabaseSavingModes ) ;
158
- constructor ( objective : string | ScoreboardObjective , saveMode : DatabaseSavingModes . EndTickSave , interval ?: number ) ;
159
- /**@inheritdoc */
160
- set ( key : string , value : any ) : this
161
- /**@inheritdoc */
1
+ import { World , Entity } from "@minecraft/server" ;
2
+ declare class DynamicDatabase extends Map {
3
+ protected constructor ( ) ;
4
+ set ( key : string , value : any )
162
5
delete ( key : string ) : boolean
163
- /**@inheritdoc */
164
6
clear ( ) : void
165
- load ( ) : this
166
- loadAsync ( ) : Promise < this>
167
- rebuild ( ) : this;
168
- rebuildAsync ( ) : Promise < this> ;
169
- readonly objective : ScoreboardObjective
170
- readonly id : string ;
171
- readonly loaded : boolean ;
172
- readonly maxLength : number ;
173
- readonly savingMode : DatabaseSavingModes ;
174
- readonly type : "DefualtJsonType" | "JsonType" | "NBTType" | "CustomType" ;
175
- readonly loadingAwaiter : Promise < this> ;
176
- }
177
- export class JsonDatabase extends ScoreboardDatabaseManager { }
178
- export class NBTDatabase extends ScoreboardDatabaseManager { }
179
- export class CustomDatabase extends ScoreboardDatabaseManager {
180
- constructor ( parser : { parse :( data :string ) => any , stringify :( data : any ) => string } , objective : string | ScoreboardObjective , saveMode ?: DatabaseSavingModes ) ;
181
- constructor ( parser : { parse :( data :string ) => any , stringify :( data : any ) => string } , objective : string | ScoreboardObjective , saveMode : DatabaseSavingModes . EndTickSave , interval ?: number ) ;
182
- }
7
+ isValid ( ) : boolean
8
+ dispose ( ) : void
9
+ readonly isDisposed : boolean
10
+ }
11
+ //@ts -ignore
12
+ export class JsonDatabase extends DynamicDatabase { constructor ( source : World | Entity , id : string ) ; }
13
+ //@ts -ignore
14
+ export class WorldDatabase extends JsonDatabase { constructor ( id : string ) }
0 commit comments