@rb-pulse/roblox 1.2.24
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/index.ts +503 -0
- package/package.json +19 -0
package/index.ts
ADDED
|
@@ -0,0 +1,503 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @pulse/roblox — Roblox API type declarations for Pulse framework scripts.
|
|
3
|
+
*
|
|
4
|
+
* Provides types for Roblox services, instances, enums, and globals so
|
|
5
|
+
* TypeScript game scripts get full IntelliSense without `any` casts.
|
|
6
|
+
*
|
|
7
|
+
* For comprehensive Roblox types, also see: `@rbxts/types`
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import { Players, RunService, Enum } from '@pulse/roblox'
|
|
12
|
+
*
|
|
13
|
+
* const player = Players.LocalPlayer
|
|
14
|
+
* const char = player.Character
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
// ── Instances ──────────────────────────────────────────────────────────────────
|
|
19
|
+
|
|
20
|
+
export interface Instance {
|
|
21
|
+
Name: string
|
|
22
|
+
Parent: Instance | undefined
|
|
23
|
+
ClassName: string
|
|
24
|
+
Destroy(): void
|
|
25
|
+
Clone(): this
|
|
26
|
+
GetChildren(): Instance[]
|
|
27
|
+
GetDescendants(): Instance[]
|
|
28
|
+
IsA(className: string): boolean
|
|
29
|
+
FindFirstChild(name: string, recursive?: boolean): Instance | undefined
|
|
30
|
+
FindFirstChildOfClass(className: string): Instance | undefined
|
|
31
|
+
FindFirstAncestorOfClass(className: string): Instance | undefined
|
|
32
|
+
WaitForChild(name: string, timeout?: number): Instance
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export interface BasePart extends Instance {
|
|
36
|
+
Position: Vector3
|
|
37
|
+
CFrame: CFrame
|
|
38
|
+
Size: Vector3
|
|
39
|
+
Orientation: Vector3
|
|
40
|
+
Anchored: boolean
|
|
41
|
+
CanCollide: boolean
|
|
42
|
+
CanTouch: boolean
|
|
43
|
+
Massless: boolean
|
|
44
|
+
Transparency: number
|
|
45
|
+
BrickColor: BrickColor
|
|
46
|
+
Material: EnumItem
|
|
47
|
+
Velocity: Vector3
|
|
48
|
+
AssemblyLinearVelocity: Vector3
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export interface Part extends BasePart {
|
|
52
|
+
Shape: EnumItem
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export interface MeshPart extends BasePart {
|
|
56
|
+
MeshId: string
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export interface Model extends Instance {
|
|
60
|
+
PrimaryPart: BasePart | undefined
|
|
61
|
+
WorldPivot: CFrame
|
|
62
|
+
GetBoundingBox(): [CFrame, Vector3]
|
|
63
|
+
MoveTo(position: Vector3): void
|
|
64
|
+
SetPrimaryPartCFrame(cframe: CFrame): void
|
|
65
|
+
GetChildren(): Instance[]
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export interface Humanoid extends Instance {
|
|
69
|
+
Health: number
|
|
70
|
+
MaxHealth: number
|
|
71
|
+
WalkSpeed: number
|
|
72
|
+
JumpPower: number
|
|
73
|
+
JumpHeight: number
|
|
74
|
+
AutoRotate: boolean
|
|
75
|
+
PlatformStand: boolean
|
|
76
|
+
RigType: EnumItem
|
|
77
|
+
MoveDirection: Vector3
|
|
78
|
+
HipHeight: number
|
|
79
|
+
Died: RBXScriptSignal<[]>
|
|
80
|
+
HealthChanged: RBXScriptSignal<[number]>
|
|
81
|
+
Jumping: RBXScriptSignal<[boolean]>
|
|
82
|
+
Running: RBXScriptSignal<[number]>
|
|
83
|
+
StateChanged: RBXScriptSignal<[EnumItem, EnumItem]>
|
|
84
|
+
GetState(): EnumItem
|
|
85
|
+
ChangeState(state: EnumItem): void
|
|
86
|
+
TakeDamage(amount: number): void
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export interface HumanoidRootPart extends BasePart {}
|
|
90
|
+
|
|
91
|
+
export interface AnimationTrack extends Instance {
|
|
92
|
+
Length: number
|
|
93
|
+
Looped: boolean
|
|
94
|
+
Speed: number
|
|
95
|
+
IsPlaying: boolean
|
|
96
|
+
Play(fadeTime?: number, weight?: number, speed?: number): void
|
|
97
|
+
Stop(fadeTime?: number): void
|
|
98
|
+
AdjustSpeed(speed: number): void
|
|
99
|
+
AdjustWeight(weight: number, fadeTime?: number): void
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
export interface Animator extends Instance {
|
|
103
|
+
LoadAnimation(animation: Instance): AnimationTrack
|
|
104
|
+
GetPlayingAnimationTracks(): AnimationTrack[]
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
export interface Camera extends Instance {
|
|
108
|
+
CFrame: CFrame
|
|
109
|
+
Focus: CFrame
|
|
110
|
+
CameraType: EnumItem
|
|
111
|
+
FieldOfView: number
|
|
112
|
+
ViewportSize: Vector2
|
|
113
|
+
WorldToViewportPoint(worldPos: Vector3): [Vector3, boolean]
|
|
114
|
+
WorldToScreenPoint(worldPos: Vector3): [Vector3, boolean]
|
|
115
|
+
ScreenPointToRay(x: number, y: number, depth?: number): Ray
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
// ── Player ─────────────────────────────────────────────────────────────────────
|
|
119
|
+
|
|
120
|
+
export interface Player extends Instance {
|
|
121
|
+
Name: string
|
|
122
|
+
UserId: number
|
|
123
|
+
DisplayName: string
|
|
124
|
+
Team: Instance | undefined
|
|
125
|
+
Character: Model | undefined
|
|
126
|
+
CharacterAdded: RBXScriptSignal<[Model]>
|
|
127
|
+
CharacterRemoving: RBXScriptSignal<[Model]>
|
|
128
|
+
GetHumanoid(): Humanoid | undefined
|
|
129
|
+
GetMouse(): Mouse
|
|
130
|
+
IsInGroup(groupId: number): boolean
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
export interface Mouse {
|
|
134
|
+
Hit: CFrame
|
|
135
|
+
Origin: CFrame
|
|
136
|
+
Target: BasePart | undefined
|
|
137
|
+
UnitRay: Ray
|
|
138
|
+
X: number
|
|
139
|
+
Y: number
|
|
140
|
+
ViewSizeX: number
|
|
141
|
+
ViewSizeY: number
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
// ── Services ───────────────────────────────────────────────────────────────────
|
|
145
|
+
|
|
146
|
+
export interface PlayersService {
|
|
147
|
+
LocalPlayer: Player
|
|
148
|
+
GetPlayers(): Player[]
|
|
149
|
+
GetPlayerFromCharacter(character: Model): Player | undefined
|
|
150
|
+
PlayerAdded: RBXScriptSignal<[Player]>
|
|
151
|
+
PlayerRemoving: RBXScriptSignal<[Player]>
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
export interface RunServiceInstance {
|
|
155
|
+
Heartbeat: RBXScriptSignal<[number]>
|
|
156
|
+
RenderStepped: RBXScriptSignal<[number]>
|
|
157
|
+
Stepped: RBXScriptSignal<[number, number]>
|
|
158
|
+
IsClient(): boolean
|
|
159
|
+
IsServer(): boolean
|
|
160
|
+
IsStudio(): boolean
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
export interface UserInputServiceInstance {
|
|
164
|
+
InputBegan: RBXScriptSignal<[InputObject, boolean]>
|
|
165
|
+
InputEnded: RBXScriptSignal<[InputObject, boolean]>
|
|
166
|
+
InputChanged: RBXScriptSignal<[InputObject, boolean]>
|
|
167
|
+
GetMouseLocation(): Vector2
|
|
168
|
+
GetMouseDelta(): Vector2
|
|
169
|
+
IsKeyDown(key: EnumItem): boolean
|
|
170
|
+
IsMouseButtonPressed(btn: EnumItem): boolean
|
|
171
|
+
GetGamepadState(gp: EnumItem): InputObject[]
|
|
172
|
+
MouseBehavior: EnumItem
|
|
173
|
+
MouseIconEnabled: boolean
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
export interface TweenServiceInstance {
|
|
177
|
+
Create(instance: Instance, info: TweenInfo, goals: Record<string, unknown>): Tween
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
export interface WorkspaceInstance extends Model {
|
|
181
|
+
CurrentCamera: Camera
|
|
182
|
+
Gravity: number
|
|
183
|
+
Raycast(origin: Vector3, direction: Vector3, params?: RaycastParams): RaycastResult | undefined
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
export interface HttpServiceInstance {
|
|
187
|
+
GetAsync(url: string, nocache?: boolean): string
|
|
188
|
+
PostAsync(url: string, data: string, contentType?: EnumItem): string
|
|
189
|
+
JSONEncode(data: unknown): string
|
|
190
|
+
JSONDecode(data: string): unknown
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
export interface DataStoreServiceInstance {
|
|
194
|
+
GetDataStore(name: string, scope?: string): DataStore
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
export interface DataStore {
|
|
198
|
+
GetAsync(key: string): unknown
|
|
199
|
+
SetAsync(key: string, value: unknown): void
|
|
200
|
+
RemoveAsync(key: string): unknown
|
|
201
|
+
UpdateAsync(key: string, fn: (oldVal: unknown) => unknown): unknown
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
export interface TeleportServiceInstance {
|
|
205
|
+
Teleport(placeId: number, player?: Player): void
|
|
206
|
+
TeleportToPrivateServer(placeId: number, reservedServerAccessCode: string, players: Player[]): void
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
// ── DataModel (game) ───────────────────────────────────────────────────────────
|
|
210
|
+
|
|
211
|
+
export interface DataModel extends Instance {
|
|
212
|
+
PlaceId: number
|
|
213
|
+
GameId: number
|
|
214
|
+
Workspace: WorkspaceInstance
|
|
215
|
+
Players: PlayersService
|
|
216
|
+
RunService: RunServiceInstance
|
|
217
|
+
UserInputService: UserInputServiceInstance
|
|
218
|
+
TweenService: TweenServiceInstance
|
|
219
|
+
HttpService: HttpServiceInstance
|
|
220
|
+
DataStoreService: DataStoreServiceInstance
|
|
221
|
+
TeleportService: TeleportServiceInstance
|
|
222
|
+
GetService(serviceName: string): Instance
|
|
223
|
+
HttpGet(url: string, nocache?: boolean): string
|
|
224
|
+
HttpGetAsync(url: string, nocache?: boolean): string
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
// ── Math types ────────────────────────────────────────────────────────────────
|
|
228
|
+
|
|
229
|
+
export interface Vector3 {
|
|
230
|
+
X: number; Y: number; Z: number
|
|
231
|
+
Magnitude: number
|
|
232
|
+
Unit: Vector3
|
|
233
|
+
add(v: Vector3): Vector3
|
|
234
|
+
sub(v: Vector3): Vector3
|
|
235
|
+
mul(n: number): Vector3
|
|
236
|
+
div(n: number): Vector3
|
|
237
|
+
Dot(v: Vector3): number
|
|
238
|
+
Cross(v: Vector3): Vector3
|
|
239
|
+
Lerp(v: Vector3, t: number): Vector3
|
|
240
|
+
new(x: number, y: number, z: number): Vector3
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
export interface Vector2 {
|
|
244
|
+
X: number; Y: number
|
|
245
|
+
Magnitude: number
|
|
246
|
+
Unit: Vector2
|
|
247
|
+
add(v: Vector2): Vector2
|
|
248
|
+
sub(v: Vector2): Vector2
|
|
249
|
+
mul(n: number): Vector2
|
|
250
|
+
new(x: number, y: number): Vector2
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
export interface CFrame {
|
|
254
|
+
Position: Vector3
|
|
255
|
+
LookVector: Vector3
|
|
256
|
+
RightVector: Vector3
|
|
257
|
+
UpVector: Vector3
|
|
258
|
+
X: number; Y: number; Z: number
|
|
259
|
+
mul(cf: CFrame): CFrame
|
|
260
|
+
ToWorldSpace(cf: CFrame): CFrame
|
|
261
|
+
ToObjectSpace(cf: CFrame): CFrame
|
|
262
|
+
PointToWorldSpace(v: Vector3): Vector3
|
|
263
|
+
PointToObjectSpace(v: Vector3): Vector3
|
|
264
|
+
Lerp(cf: CFrame, t: number): CFrame
|
|
265
|
+
new(pos: Vector3, lookAt?: Vector3): CFrame
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
export interface BrickColor {
|
|
269
|
+
Name: string
|
|
270
|
+
Number: number
|
|
271
|
+
Color: Color3
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
export interface Color3 {
|
|
275
|
+
R: number; G: number; B: number
|
|
276
|
+
ToHSV(): [number, number, number]
|
|
277
|
+
Lerp(c: Color3, t: number): Color3
|
|
278
|
+
new(r: number, g: number, b: number): Color3
|
|
279
|
+
fromRGB(r: number, g: number, b: number): Color3
|
|
280
|
+
fromHSV(h: number, s: number, v: number): Color3
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
export interface UDim2 {
|
|
284
|
+
X: UDim; Y: UDim
|
|
285
|
+
new(xScale: number, xOffset: number, yScale: number, yOffset: number): UDim2
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
export interface UDim {
|
|
289
|
+
Scale: number; Offset: number
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
export interface Ray {
|
|
293
|
+
Origin: Vector3
|
|
294
|
+
Direction: Vector3
|
|
295
|
+
ClosestPoint(point: Vector3): Vector3
|
|
296
|
+
Distance(point: Vector3): number
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
// ── Raycast ───────────────────────────────────────────────────────────────────
|
|
300
|
+
|
|
301
|
+
export interface RaycastParams {
|
|
302
|
+
FilterDescendantsInstances: Instance[]
|
|
303
|
+
FilterType: EnumItem
|
|
304
|
+
IgnoreWater: boolean
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
export interface RaycastResult {
|
|
308
|
+
Instance: BasePart
|
|
309
|
+
Position: Vector3
|
|
310
|
+
Normal: Vector3
|
|
311
|
+
Material: EnumItem
|
|
312
|
+
Distance: number
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
// ── Tweening ──────────────────────────────────────────────────────────────────
|
|
316
|
+
|
|
317
|
+
export interface TweenInfo {
|
|
318
|
+
Time: number
|
|
319
|
+
EasingStyle: EnumItem
|
|
320
|
+
EasingDirection: EnumItem
|
|
321
|
+
RepeatCount: number
|
|
322
|
+
Reverses: boolean
|
|
323
|
+
DelayTime: number
|
|
324
|
+
new(time: number, easingStyle?: EnumItem, easingDirection?: EnumItem,
|
|
325
|
+
repeatCount?: number, reverses?: boolean, delayTime?: number): TweenInfo
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
export interface Tween extends Instance {
|
|
329
|
+
PlaybackState: EnumItem
|
|
330
|
+
Play(): void
|
|
331
|
+
Pause(): void
|
|
332
|
+
Cancel(): void
|
|
333
|
+
Completed: RBXScriptSignal<[EnumItem]>
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
// ── Input ─────────────────────────────────────────────────────────────────────
|
|
337
|
+
|
|
338
|
+
export interface InputObject {
|
|
339
|
+
KeyCode: EnumItem
|
|
340
|
+
UserInputType: EnumItem
|
|
341
|
+
UserInputState: EnumItem
|
|
342
|
+
Position: Vector3
|
|
343
|
+
Delta: Vector3
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
// ── Signals ───────────────────────────────────────────────────────────────────
|
|
347
|
+
|
|
348
|
+
export interface RBXScriptSignal<T extends unknown[] = []> {
|
|
349
|
+
Connect(fn: (...args: T) => void): RBXScriptConnection
|
|
350
|
+
Once(fn: (...args: T) => void): RBXScriptConnection
|
|
351
|
+
Wait(): LuaMultiReturn<T>
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
export interface RBXScriptConnection {
|
|
355
|
+
Connected: boolean
|
|
356
|
+
Disconnect(): void
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
export type LuaMultiReturn<T extends unknown[]> = T
|
|
360
|
+
|
|
361
|
+
// ── Enum ──────────────────────────────────────────────────────────────────────
|
|
362
|
+
|
|
363
|
+
export interface EnumItem {
|
|
364
|
+
Name: string
|
|
365
|
+
Value: number
|
|
366
|
+
EnumType: EnumType
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
export interface EnumType {
|
|
370
|
+
GetEnumItems(): EnumItem[]
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
export declare namespace Enum {
|
|
374
|
+
namespace KeyCode {
|
|
375
|
+
const Unknown: EnumItem
|
|
376
|
+
const Backspace: EnumItem
|
|
377
|
+
const Tab: EnumItem
|
|
378
|
+
const Return: EnumItem
|
|
379
|
+
const Escape: EnumItem
|
|
380
|
+
const Space: EnumItem
|
|
381
|
+
const Delete: EnumItem
|
|
382
|
+
const A: EnumItem; const B: EnumItem; const C: EnumItem
|
|
383
|
+
const D: EnumItem; const E: EnumItem; const F: EnumItem
|
|
384
|
+
const G: EnumItem; const H: EnumItem; const I: EnumItem
|
|
385
|
+
const J: EnumItem; const K: EnumItem; const L: EnumItem
|
|
386
|
+
const M: EnumItem; const N: EnumItem; const O: EnumItem
|
|
387
|
+
const P: EnumItem; const Q: EnumItem; const R: EnumItem
|
|
388
|
+
const S: EnumItem; const T: EnumItem; const U: EnumItem
|
|
389
|
+
const V: EnumItem; const W: EnumItem; const X: EnumItem
|
|
390
|
+
const Y: EnumItem; const Z: EnumItem
|
|
391
|
+
const Zero: EnumItem; const One: EnumItem; const Two: EnumItem
|
|
392
|
+
const Three: EnumItem; const Four: EnumItem; const Five: EnumItem
|
|
393
|
+
const Six: EnumItem; const Seven: EnumItem; const Eight: EnumItem; const Nine: EnumItem
|
|
394
|
+
const F1: EnumItem; const F2: EnumItem; const F3: EnumItem; const F4: EnumItem
|
|
395
|
+
const F5: EnumItem; const F6: EnumItem; const F7: EnumItem; const F8: EnumItem
|
|
396
|
+
const F9: EnumItem; const F10: EnumItem; const F11: EnumItem; const F12: EnumItem
|
|
397
|
+
const LeftShift: EnumItem; const RightShift: EnumItem
|
|
398
|
+
const LeftControl: EnumItem; const RightControl: EnumItem
|
|
399
|
+
const LeftAlt: EnumItem; const RightAlt: EnumItem
|
|
400
|
+
const Up: EnumItem; const Down: EnumItem; const Left: EnumItem; const Right: EnumItem
|
|
401
|
+
const Insert: EnumItem; const Home: EnumItem; const End: EnumItem
|
|
402
|
+
const PageUp: EnumItem; const PageDown: EnumItem
|
|
403
|
+
const CapsLock: EnumItem; const NumLock: EnumItem; const ScrollLock: EnumItem
|
|
404
|
+
const LeftBracket: EnumItem; const RightBracket: EnumItem
|
|
405
|
+
const Semicolon: EnumItem; const Quote: EnumItem; const Comma: EnumItem
|
|
406
|
+
const Period: EnumItem; const Slash: EnumItem; const Backslash: EnumItem
|
|
407
|
+
const Minus: EnumItem; const Equals: EnumItem; const Tilde: EnumItem
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
namespace UserInputType {
|
|
411
|
+
const None: EnumItem
|
|
412
|
+
const MouseButton1: EnumItem
|
|
413
|
+
const MouseButton2: EnumItem
|
|
414
|
+
const MouseButton3: EnumItem
|
|
415
|
+
const MouseWheel: EnumItem
|
|
416
|
+
const MouseMovement: EnumItem
|
|
417
|
+
const Touch: EnumItem
|
|
418
|
+
const Keyboard: EnumItem
|
|
419
|
+
const Focus: EnumItem
|
|
420
|
+
const Accelerometer: EnumItem
|
|
421
|
+
const Gyro: EnumItem
|
|
422
|
+
const Gamepad1: EnumItem
|
|
423
|
+
const TextInput: EnumItem
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
namespace HumanoidStateType {
|
|
427
|
+
const None: EnumItem
|
|
428
|
+
const Jumping: EnumItem
|
|
429
|
+
const Flying: EnumItem
|
|
430
|
+
const Freefall: EnumItem
|
|
431
|
+
const Seated: EnumItem
|
|
432
|
+
const Running: EnumItem
|
|
433
|
+
const RunningNoPhysics: EnumItem
|
|
434
|
+
const Climbing: EnumItem
|
|
435
|
+
const Swimming: EnumItem
|
|
436
|
+
const Dead: EnumItem
|
|
437
|
+
const Physics: EnumItem
|
|
438
|
+
const Landed: EnumItem
|
|
439
|
+
const StrafingNoPhysics: EnumItem
|
|
440
|
+
const FallingDown: EnumItem
|
|
441
|
+
const GettingUp: EnumItem
|
|
442
|
+
const PlatformStanding: EnumItem
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
namespace RaycastFilterType {
|
|
446
|
+
const Include: EnumItem
|
|
447
|
+
const Exclude: EnumItem
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
namespace EasingStyle {
|
|
451
|
+
const Linear: EnumItem; const Quad: EnumItem; const Cubic: EnumItem
|
|
452
|
+
const Quart: EnumItem; const Quint: EnumItem; const Sine: EnumItem
|
|
453
|
+
const Bounce: EnumItem; const Elastic: EnumItem; const Exponential: EnumItem
|
|
454
|
+
const Circular: EnumItem; const Back: EnumItem
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
namespace EasingDirection {
|
|
458
|
+
const In: EnumItem; const Out: EnumItem; const InOut: EnumItem
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
namespace MouseBehavior {
|
|
462
|
+
const Default: EnumItem
|
|
463
|
+
const LockCenter: EnumItem
|
|
464
|
+
const LockCurrentPosition: EnumItem
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
namespace Material {
|
|
468
|
+
const Plastic: EnumItem; const Wood: EnumItem; const Slate: EnumItem
|
|
469
|
+
const Concrete: EnumItem; const CorrodedMetal: EnumItem; const DiamondPlate: EnumItem
|
|
470
|
+
const Foil: EnumItem; const Grass: EnumItem; const Ice: EnumItem; const Marble: EnumItem
|
|
471
|
+
const Granite: EnumItem; const Brick: EnumItem; const Pebble: EnumItem; const Sand: EnumItem
|
|
472
|
+
const Fabric: EnumItem; const SmoothPlastic: EnumItem; const Metal: EnumItem
|
|
473
|
+
const WoodPlanks: EnumItem; const Cobblestone: EnumItem; const Air: EnumItem
|
|
474
|
+
const Water: EnumItem; const Rock: EnumItem; const Glacier: EnumItem; const Snow: EnumItem
|
|
475
|
+
const Sandstone: EnumItem; const Mud: EnumItem; const Basalt: EnumItem; const Ground: EnumItem
|
|
476
|
+
const CrackedLava: EnumItem; const Neon: EnumItem; const Glass: EnumItem
|
|
477
|
+
const Asphalt: EnumItem; const LeafyGrass: EnumItem; const Salt: EnumItem
|
|
478
|
+
const Limestone: EnumItem; const Pavement: EnumItem
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
// ── Globals ───────────────────────────────────────────────────────────────────
|
|
483
|
+
// These are declared as ambient globals in Roblox scripts.
|
|
484
|
+
|
|
485
|
+
declare const game: DataModel
|
|
486
|
+
declare const workspace: WorkspaceInstance
|
|
487
|
+
declare const script: Instance
|
|
488
|
+
|
|
489
|
+
declare const Players: PlayersService
|
|
490
|
+
declare const RunService: RunServiceInstance
|
|
491
|
+
declare const UserInputService: UserInputServiceInstance
|
|
492
|
+
declare const TweenService: TweenServiceInstance
|
|
493
|
+
declare const HttpService: HttpServiceInstance
|
|
494
|
+
declare const DataStoreService: DataStoreServiceInstance
|
|
495
|
+
declare const TeleportService: TeleportServiceInstance
|
|
496
|
+
|
|
497
|
+
// Export the types so they can be imported explicitly
|
|
498
|
+
export type {
|
|
499
|
+
DataModel, WorkspaceInstance, PlayersService,
|
|
500
|
+
RunServiceInstance, UserInputServiceInstance,
|
|
501
|
+
TweenServiceInstance, HttpServiceInstance,
|
|
502
|
+
}
|
|
503
|
+
export { game, workspace, script, Players, RunService, UserInputService, TweenService }
|
package/package.json
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@rb-pulse/roblox",
|
|
3
|
+
"version": "1.2.24",
|
|
4
|
+
"description": "Pulse framework — Roblox API type declarations for TypeScript game scripts",
|
|
5
|
+
"main": "./index.ts",
|
|
6
|
+
"types": "./index.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"index.ts",
|
|
9
|
+
"*.d.ts"
|
|
10
|
+
],
|
|
11
|
+
"keywords": [
|
|
12
|
+
"roblox",
|
|
13
|
+
"pulse",
|
|
14
|
+
"lua",
|
|
15
|
+
"typescript",
|
|
16
|
+
"types"
|
|
17
|
+
],
|
|
18
|
+
"license": "MIT"
|
|
19
|
+
}
|