Skip to main content

TypeDefinitions

Types

Type definitions for strict-typing.

Types​

vaildcast​

type vaildcast = ActiveCastData | ActiveBlockcastData | ActiveSpherecastData

A type that can be either an ActiveCast or an ActiveBlockcast.

FastCastEventsModule​

type FastCastEventsModule = ModuleScript

A moduleScript that will be required by ActiveCast

FastCastEvents​

type FastCastEvents = {
CanPierce: CanPierceFunction,
Pierced: OnPiercedFunction,
LengthChanged: OnLengthChangedFunction,
CastTerminating: OnCastTerminatingFunction,
}

A table of callback functions (events/hooks) used by ActiveCast. These functions are invoked by ActiveCast during a lifecycle (e.g., length updates, pierce checks).

CanPierceFunction​

type CanPierceFunction = (
cast: vaildcast,
result: RaycastResult,
segmentVelocity: Vector3,
cosmeticBulletObject: Instance?
) → boolean

Callback used to decide whether a cast should pierce and continue after a hit.

OnHitFunction​

type OnHitFunction = (
cast: vaildcast,
result: RaycastResult,
segmentVelocity: Vector3,
cosmeticBulletObject: Instance?
) → ()

Callback fired when the cast hits something (non-piercing).

OnPierceFunction​

type OnPierceFunction = (
cast: vaildcast,
result: RaycastResult,
segmentVelocity: Vector3,
cosmeticBulletObject: Instance?
) → ()

Callback fired when the cast pierces something.

OnLengthChangedFunction​

type OnLengthChangedFunction = (
cast: vaildcast,
lastPoint: Vector3,
rayDir: Vector3,
rayDisplacement: number,
segmentVelocity: Vector3,
cosmeticBulletObject: Instance?
) → ()

Callback fired when the cast's length changes as it updates.

OnCastTerminatingFunction​

type OnCastTerminatingFunction = (cast: vaildcast) → ()

Callback fired right as an ActiveCast is terminating.

OnCastFireFunction​

type OnCastFireFunction = (
cast: vaildcast,
lastPoint: Vector3,
rayDir: Vector3,
segmentVelocity: Vector3,
behavior: FastCastBehavior
) → ()

Callback fired when a cast is initially fired.

VisualizeCastSettings​

type VisualizeCastSettings = {
Debug_SegmentColor: Color3,
Debug_SegmentTransparency: number,
Debug_SegmentSize: number,
Debug_HitColor: Color3,
Debug_HitTransparency: number,
Debug_HitSize: number,
Debug_RayPierceColor: Color3,
Debug_RayPierceTransparency: number,
Debug_RayPierceSize: number,
Debug_RayLifetime: number,
Debug_HitLifetime: number
}

Debug visualization settings for casts.

CasterParallel​

type CasterParallel = {
WorldRoot: WorldRoot,
LengthChanged: OnLengthChangedFunction,
Pierced: OnPiercedFunction,
CastTerminating: OnCastTerminatingFunction,
CastFire: OnCastFireFunction,
Dispatcher: Dispatcher.Dispatcher,
AlreadyInit: boolean,
ObjectCacheEnabled: boolean,
MovementMode: "BulkMoveTo" | "Motor6D",
FastCastEventsModule: FastCastEventsModule,
Init: (
numWorkers: number,
newParent: Folder,
newName: string,
ContainerParent: Folder,
VMContainerName: string,
VMname: string,
MovementMode: "BulkMoveTo" | "Motor6D",
FastCastEventsModule: ModuleScript,
useObjectCache: boolean,
Template: BasePart | Model,
CacheSize: number,
CacheHolder: Instance
) → (),
RaycastFire: (
Origin: Vector3,
Direction: Vector3,
Velocity: Vector3 | number,
) → (),
BlockcastFire: (
Origin: Vector3,
Size: Vector3,
Direction: Vector3,
Velocity: Vector3 | number,
) → (),
SpherecastFire: (
Origin: Vector3,
Radius: number,
Direction: Vector3,
Velocity: Vector3 | number,
) → (),
SetMovementModeEnabled: (
mode: "BulkMoveTo" | "Motor6D",
enabled: boolean
) → (),
SetObjectCacheEnabled: (
enabled: boolean,
Template: BasePart | Model,
CacheSize: number,
CacheHolder: Instance
) → (),
SetFastCastEventsModule: (
moduleScript: ModuleScript
) → (),
AddVelocityCast: (
cast: vaildcast,
velocity: Vector3
) → (),
SetVelocityCast: (
cast: vaildcast,
velocity: Vector3
) → (),
GetVelocityCast: (
cast: vaildcast
) → Vector3,
AddAccelerationCast: (
cast: vaildcast,
acceleration: Vector3
) → Vector3,
SetAccelerationCast: (
cast: vaildcast,
acceleration: Vector3
) → (),
GetAccelerationCast: (
cast: vaildcast
) → Vector3,
AddPositionCast: (
cast: vaildcast,
Position: Vector3
) → (),
GetPositionCast: (
cast: vaildcast
) → Vector3,
SyncChangesToCast: (
cast: vaildcast
) → (),
TerminateCast: (
cast: vaildcast
) → (),
Destroy: (CasterParallel) → ()
}

Represents a Caster Parallel.

CasterSerial​

type CasterSerial = {
WorldRoot: WorldRoot,
LengthChanged: OnLengthChangedFunction,
CanPierce: CanPierceFunction,
Pierced: OnPiercedFunction,
CastTerminating: OnCastTerminatingFunction,
CastFire: OnCastFireFunction,
Dispatcher: Dispatcher.Dispatcher,
AlreadyInit: boolean,
ObjectCacheEnabled: boolean,
MovementMode: "BulkMoveTo" | "Motor6D",
FastCastEventsModule: FastCastEventsModule,
Init: (
self: CasterSerial,
movementMode: "BulkMoveTo" | "Motor6D",
useObjectCache: boolean,
Template: BasePart | Model?,
CacheSize: number?,
CacheHolder: Instance?
) → (),
RaycastFire: (
Origin: Vector3,
Direction: Vector3,
Velocity: Vector3 | number,
) → (),
BlockcastFire: (
self: CasterSerial,
Origin: Vector3,
Size: Vector3,
Direction: Vector3,
Velocity: Vector3 | number,
) → (),
SpherecastFire: (
self: CasterSerial,
Origin: Vector3,
Radius: number,
Direction: Vector3,
Velocity: Vector3 | number,
) → (),
SetMovementModeEnabled: (
mode: "BulkMoveTo" | "Motor6D",
enabled: boolean
) → (),
SetObjectCacheEnabled: (
self: CasterSerial,
enabled: boolean,
Template: BasePart | Model,
CacheSize: number,
CacheHolder: Instance
) → (),
AddVelocityCast: (
cast: vaildcast,
velocity: Vector3
) → (),
SetVelocityCast: (
cast: vaildcast,
velocity: Vector3
) → (),
GetVelocityCast: (
cast: vaildcast
) → Vector3,
AddAccelerationCast: (
cast: vaildcast,
acceleration: Vector3
) → Vector3,
SetAccelerationCast: (
cast: vaildcast,
acceleration: Vector3
) → (),
GetAccelerationCast: (
cast: vaildcast
) → Vector3,
AddPositionCast: (
cast: vaildcast,
Position: Vector3
) → (),
GetPositionCast: (
cast: vaildcast
) → Vector3,
TerminateCast: (
cast: vaildcast
) → (),
Destroy: (CasterSerial) → ()
}

Represents a Caster Serial.

FastCastEventsModuleConfig​

type FastCastEventsModuleConfig = {
UseLengthChanged: boolean,
UseHit: boolean,
UsePierced: boolean,
UseCastTerminating: boolean,
UseCanPierce: boolean,
UseCastFire: boolean
}

Represents a FastCastBehavior configuration.

FastCastEventsConfig​

type FastCastEventsConfig = {
UseLengthChanged: boolean,
UseHit: boolean,
UsePierced: boolean,
UseCastTerminating: boolean,
UseCastFire: boolean
}

Represents a FastCastBehavior configuration.

FastCastBehavior​

type FastCastBehavior = {
RaycastParams: RaycastParams?,
MaxDistance: number,
Acceleration: Vector3,
HighFidelityBehavior: number,
HighFidelitySegmentSize: number,
CosmeticBulletTemplate: Instance?,
CosmeticBulletContainer: Instance?,
AutoIgnoreContainer: boolean,
MovementMethod: "BulkMoveTo" | "Transform",
FastCastEventsModuleConfig: FastCastEventsModuleConfig,
VisualizeCasts: boolean,
VisualizeCastSettings: VisualizeCastSettings,
FastCastEventsConfig: FastCastEventsConfig,
UserData: any
}

Represents a FastCastBehavior configuration.

CastTrajectory​

type CastTrajectory = {
StartTime: number,
EndTime: number,
Origin: Vector3,
InitialVelocity: Vector3,
Acceleration: Vector3
}

Represents a cast trajectory segment.

CastStateInfo​

type CastStateInfo = {
HighFidelityBehavior: number,
HighFidelitySegmentSize: number,
TotalRuntime: number,
DistanceCovered: number,
IsActivelySimulatingPierce: boolean,
IsActivelyResimulating: boolean,
CancelHighResCast: boolean,
Trajectory: CastTrajectory,
VisualizeCasts: boolean,
VisualizeCastSettings: VisualizeCastSettings,
FastCastEventsConfig: FastCastEventsConfig,
FastCastEventsModuleConfig: FastCastEventsModuleConfig
}

Represents cast state tracking data.

CastRayInfo​

type CastRayInfo = {
Parameters: RaycastParams,
WorldRoot: WorldRoot,
MaxDistance: number,
CosmeticBulletObject: Instance?,
FastCastEventsModule: FastCastEventsModule
}

Ray info for ray-cast variants.

BlockCastRayInfo​

type BlockCastRayInfo = {
Parameters: RaycastParams,
WorldRoot: WorldRoot,
MaxDistance: number,
CosmeticBulletObject: Instance?,
CanPierceModule: ModuleScript?,
Size: Vector3
}

Ray info for block-cast variants.

SpherecastRayInfo​

type SpherecastRayInfo = {
Parameters: RaycastParams,
WorldRoot: WorldRoot,
MaxDistance: number,
CosmeticBulletObject: Instance?,
CanPierceModule: ModuleScript?,
Radius: number
}

Ray info for sphere-cast variants.

BaseCastData​

type BaseCastData = {
Output: BindableEvent,
ActiveCastCleaner: BindableEvent,
ObjectCache: BindableFunction?,
CacheHolder: any?,
SyncChange: BindableEvent
}

Data stored on the caster that ActiveCasts reference.

ActiveCastData​

type ActiveCastData = {
Caster: BaseCastData | {SerialSimulation: any},
StateInfo: CastStateInfo,
RayInfo: CastRayInfo,
UserData: {[any]: any},
Type: "Raycast",
CFrame: CFrame,
ID: number
}

Represents an active cast data.

ActiveCastData​

type ActiveCastData = {
Caster: BaseCastData | {SerialSimulation: any},
StateInfo: CastStateInfo,
RayInfo: CastRayInfo,
UserData: {[any]: any},
Type: "Blockcast",
CFrame: CFrame,
ID: number
}

Represents an active block cast data.

ActiveCastData​

type ActiveCastData = {
Caster: BaseCastData | {SerialSimulation: any},
StateInfo: CastStateInfo,
RayInfo: CastRayInfo,
UserData: {[any]: any},
Type: "Spherecast",
CFrame: CFrame,
ID: number
}

Represents an active sphere cast data.

Show raw api
{
    "functions": [],
    "properties": [],
    "types": [
        {
            "name": "vaildcast",
            "desc": "A type that can be either an ActiveCast or an ActiveBlockcast.",
            "lua_type": "ActiveCastData | ActiveBlockcastData | ActiveSpherecastData",
            "source": {
                "line": 24,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "FastCastEventsModule",
            "desc": "A moduleScript that will be required by ActiveCast",
            "lua_type": "ModuleScript",
            "source": {
                "line": 32,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "FastCastEvents",
            "desc": "A table of callback functions (events/hooks) used by ActiveCast.\nThese functions are invoked by ActiveCast during a lifecycle (e.g., length updates, pierce checks).",
            "lua_type": "{ CanPierce: CanPierceFunction, Hit: OnHitFunction, Pierced: OnPiercedFunction, LengthChanged: OnLengthChangedFunction, CastTerminating: OnCastTerminatingFunction, CastFire: OnCastFireFunction }",
            "source": {
                "line": 41,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "CanPierceFunction",
            "desc": "Callback used to decide whether a cast should pierce and continue after a hit.",
            "lua_type": "(cast: vaildcast, result: RaycastResult, segmentVelocity: Vector3, cosmeticBulletObject: Instance?) -> boolean",
            "source": {
                "line": 56,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "OnHitFunction",
            "desc": "Callback fired when the cast hits something (non-piercing).",
            "lua_type": "(cast: vaildcast, result: RaycastResult, segmentVelocity: Vector3, cosmeticBulletObject: Instance?) -> ()",
            "source": {
                "line": 69,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "OnPierceFunction",
            "desc": "Callback fired when the cast pierces something.",
            "lua_type": "(cast: vaildcast, result: RaycastResult, segmentVelocity: Vector3, cosmeticBulletObject: Instance?) -> ()",
            "source": {
                "line": 82,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "OnLengthChangedFunction",
            "desc": "Callback fired when the cast's length changes as it updates.",
            "lua_type": "(cast: vaildcast, lastPoint: Vector3, rayDir: Vector3, rayDisplacement: number, segmentVelocity: Vector3, cosmeticBulletObject: Instance?) -> ()",
            "source": {
                "line": 95,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "OnCastTerminatingFunction",
            "desc": "Callback fired right as an ActiveCast is terminating.",
            "lua_type": "(cast: vaildcast) -> ()",
            "source": {
                "line": 110,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "OnCastFireFunction",
            "desc": "Callback fired when a cast is initially fired.",
            "lua_type": "(cast: vaildcast, lastPoint: Vector3, rayDir: Vector3, segmentVelocity: Vector3, behavior: FastCastBehavior) -> ()",
            "source": {
                "line": 118,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "VisualizeCastSettings",
            "desc": "Debug visualization settings for casts.",
            "lua_type": "{ Debug_SegmentColor: Color3, Debug_SegmentTransparency: number, Debug_SegmentSize: number, Debug_HitColor: Color3, Debug_HitTransparency: number, Debug_HitSize: number, Debug_RayPierceColor: Color3, Debug_RayPierceTransparency: number, Debug_RayPierceSize: number, Debug_RayLifetime: number, Debug_HitLifetime: number }",
            "source": {
                "line": 134,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "CasterParallel",
            "desc": "Represents a Caster Parallel.",
            "lua_type": "{ WorldRoot: WorldRoot,\tLengthChanged: OnLengthChangedFunction,\tHit: OnHitFunction,\tPierced: OnPiercedFunction,\tCastTerminating: OnCastTerminatingFunction,\tCastFire: OnCastFireFunction,\tDispatcher: Dispatcher.Dispatcher,\tAlreadyInit: boolean,\tObjectCacheEnabled: boolean,\tMovementMode: \"BulkMoveTo\" | \"Motor6D\",\tFastCastEventsModule: FastCastEventsModule,\tInit: (\t\tself: CasterParallel,\t\tnumWorkers: number,\t\tnewParent: Folder,\t\tnewName: string,\t\tContainerParent: Folder,\t\tVMContainerName: string,\t\tVMname: string,\t\tMovementMode: \"BulkMoveTo\" | \"Motor6D\",\t\tFastCastEventsModule: ModuleScript,\t\tuseObjectCache: boolean,\t\tTemplate: BasePart | Model,\t\tCacheSize: number,\t\tCacheHolder: Instance\t) -> (),\tRaycastFire: (\t\tCasterParallel,\t\tOrigin: Vector3,\t\tDirection: Vector3,\t\tVelocity: Vector3 | number,\t\tBehavior: FastCastBehavior?\t) -> (),\tBlockcastFire: (\t\tself: CasterParallel,\t\tOrigin: Vector3,\t\tSize: Vector3,\t\tDirection: Vector3,\t\tVelocity: Vector3 | number,\t\tBehavior: FastCastBehavior?\t) -> (),\tSpherecastFire: (\t\tself: CasterParallel,\t\tOrigin: Vector3,\t\tRadius: number,\t\tDirection: Vector3,\t\tVelocity: Vector3 | number,\t\tBehavior: FastCastBehavior?\t) -> (),\tSetMovementModeEnabled: (\t\tmode: \"BulkMoveTo\" | \"Motor6D\", \t\tenabled: boolean\t) -> (),\tSetObjectCacheEnabled: (\t\tself: CasterParallel,\t\tenabled: boolean,\t\tTemplate: BasePart | Model,\t\tCacheSize: number,\t\tCacheHolder: Instance\t) -> (),\tSetFastCastEventsModule: (self: CasterParallel, moduleScript: ModuleScript) -> (),\tAddVelocityCast: (CasterParallel, cast: vaildcast, velocity: Vector3) -> (),\tSetVelocityCast: (CasterParallel, cast: vaildcast, velocity: Vector3) -> (),\tGetVelocityCast: (CasterParallel, cast: vaildcast) -> Vector3,\tAddAccelerationCast: (CasterParallel, cast: vaildcast, acceleration: Vector3) -> Vector3,\tSetAccelerationCast: (CasterParallel, cast: vaildcast, acceleration: Vector3) -> (),\tGetAccelerationCast: (CasterParallel, cast: vaildcast) -> Vector3,\tAddPositionCast: (CasterParallel, cast: vaildcast, Position: Vector3) -> (),\tGetPositionCast: (CasterParallel, cast: vaildcast) -> Vector3,\tSyncChangesToCast: (CasterParallel, cast: vaildcast) -> (),\tTerminateCast: (CasterParallel, cast: vaildcast) -> (),\tDestroy: (CasterParallel) -> () }",
            "source": {
                "line": 158,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "CasterSerial",
            "desc": "Represents a Caster Serial.",
            "lua_type": "{ WorldRoot: WorldRoot,\tLengthChanged: OnLengthChangedFunction,\tHit: OnHitFunction,\tCanPierce: CanPierceFunction,\tPierced: OnPiercedFunction,\tCastTerminating: OnCastTerminatingFunction,\tCastFire: OnCastFireFunction,\tDispatcher: Dispatcher.Dispatcher,\tAlreadyInit: boolean,\tObjectCacheEnabled: boolean,\tMovementMode: \"BulkMoveTo\" | \"Motor6D\",\tFastCastEventsModule: FastCastEventsModule,\tInit: (\t\tself: CasterSerial,\t\tmovementMode: \"BulkMoveTo\" | \"Motor6D\",\t\tuseObjectCache: boolean,\t\tTemplate: BasePart | Model?,\t\tCacheSize: number?,\t\tCacheHolder: Instance?\t) -> (),\tRaycastFire: (\t\tCasterSerial,\t\tOrigin: Vector3,\t\tDirection: Vector3,\t\tVelocity: Vector3 | number,\t\tBehavior: FastCastBehavior?\t) -> (),\tBlockcastFire: (\t\tself: CasterSerial,\t\tOrigin: Vector3,\t\tSize: Vector3,\t\tDirection: Vector3,\t\tVelocity: Vector3 | number,\t\tBehavior: FastCastBehavior?\t) -> (),\tSpherecastFire: (\t\tself: CasterSerial,\t\tOrigin: Vector3,\t\tRadius: number,\t\tDirection: Vector3,\t\tVelocity: Vector3 | number,\t\tBehavior: FastCastBehavior?\t) -> (),\tSetMovementModeEnabled: (\t\tmode: \"BulkMoveTo\" |  \"Motor6D\", enabled: boolean\t) -> (),\tSetObjectCacheEnabled: (\t\tself: CasterSerial,\t\tenabled: boolean,\t\tTemplate: BasePart | Model,\t\tCacheSize: number,\t\tCacheHolder: Instance\t) -> (),\tAddVelocityCast: (CasterSerial, cast: vaildcast, velocity: Vector3) -> (),\tSetVelocityCast: (CasterSerial, cast: vaildcast, velocity: Vector3) -> (),\tGetVelocityCast: (CasterSerial, cast: vaildcast) -> Vector3,\tAddAccelerationCast: (CasterSerial, cast: vaildcast, acceleration: Vector3) -> Vector3,\tSetAccelerationCast: (CasterSerial, cast: vaildcast, acceleration: Vector3) -> (),\tGetAccelerationCast: (CasterSerial, cast: vaildcast) -> Vector3,\tAddPositionCast: (CasterSerial, cast: vaildcast, Position: Vector3) -> (),\tGetPositionCast: (CasterSerial, cast: vaildcast) -> Vector3,\tTerminateCast: (CasterSerial, cast: vaildcast) -> (),\tDestroy: (CasterSerial) -> () }",
            "source": {
                "line": 253,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "FastCastEventsModuleConfig",
            "desc": "Represents a FastCastBehavior configuration.",
            "lua_type": "{ UseLengthChanged: boolean, UseHit: boolean, UsePierced: boolean, UseCastTerminating: boolean, UseCanPierce: boolean, UseCastFire: boolean }",
            "source": {
                "line": 337,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "FastCastEventsConfig",
            "desc": "Represents a FastCastBehavior configuration.",
            "lua_type": "{ UseLengthChanged: boolean, UseHit: boolean, UsePierced: boolean, UseCastTerminating: boolean, UseCastFire: boolean }",
            "source": {
                "line": 352,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "FastCastBehavior",
            "desc": "Represents a FastCastBehavior configuration.",
            "lua_type": "{ RaycastParams: RaycastParams?,\tMaxDistance: number,\tAcceleration: Vector3,\tHighFidelityBehavior: number,\tHighFidelitySegmentSize: number,\tCosmeticBulletTemplate: Instance?,\tCosmeticBulletContainer: Instance?,\tAutoIgnoreContainer: boolean,\tMovementMethod: \"BulkMoveTo\" | \"Transform\",\tFastCastEventsModuleConfig: FastCastEventsModuleConfig,\tVisualizeCasts: boolean, \tVisualizeCastSettings: VisualizeCastSettings,\tFastCastEventsConfig: FastCastEventsConfig,\tUserData: any }",
            "source": {
                "line": 367,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "CastTrajectory",
            "desc": "Represents a cast trajectory segment.",
            "lua_type": "{ StartTime: number, EndTime: number, Origin: Vector3, InitialVelocity: Vector3, Acceleration: Vector3 }",
            "source": {
                "line": 391,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "CastStateInfo",
            "desc": "Represents cast state tracking data.",
            "lua_type": "{ HighFidelityBehavior: number,\tHighFidelitySegmentSize: number,\tTotalRuntime: number,\tDistanceCovered: number,\tIsActivelySimulatingPierce: boolean,\tIsActivelyResimulating: boolean,\tCancelHighResCast: boolean,\tTrajectory: CastTrajectory,\tVisualizeCasts: boolean, \tVisualizeCastSettings: VisualizeCastSettings,\tFastCastEventsConfig: FastCastEventsConfig,\tFastCastEventsModuleConfig: FastCastEventsModuleConfig }",
            "source": {
                "line": 405,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "CastRayInfo",
            "desc": "Ray info for ray-cast variants.",
            "lua_type": "{ Parameters: RaycastParams, WorldRoot: WorldRoot, MaxDistance: number, CosmeticBulletObject: Instance?, FastCastEventsModule: FastCastEventsModule }",
            "source": {
                "line": 428,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "BlockCastRayInfo",
            "desc": "Ray info for block-cast variants.",
            "lua_type": "{ Parameters: RaycastParams, WorldRoot: WorldRoot, MaxDistance: number, CosmeticBulletObject: Instance?, CanPierceModule: ModuleScript?, Size: Vector3 }",
            "source": {
                "line": 442,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "SpherecastRayInfo",
            "desc": "Ray info for sphere-cast variants.",
            "lua_type": "{ Parameters: RaycastParams, WorldRoot: WorldRoot, MaxDistance: number, CosmeticBulletObject: Instance?, CanPierceModule: ModuleScript?, Radius: number }",
            "source": {
                "line": 457,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "BaseCastData",
            "desc": "Data stored on the caster that ActiveCasts reference.",
            "lua_type": "{ Output: BindableEvent, ActiveCastCleaner: BindableEvent, ObjectCache: BindableFunction?, CacheHolder: any?, SyncChange : BindableEvent }",
            "source": {
                "line": 472,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "ActiveCastData",
            "desc": "Represents an active cast data.",
            "lua_type": "{Caster: BaseCastData | { SerialSimulation: any},StateInfo: CastStateInfo,RayInfo: CastRayInfo,UserData: { [any]: any }, Type : \"Raycast\",CFrame: CFrame,ID: number}",
            "source": {
                "line": 485,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "ActiveCastData",
            "desc": "Represents an active block cast data.",
            "lua_type": "{ Caster: BaseCastData | { SerialSimulation: any}, StateInfo: CastStateInfo, RayInfo: CastRayInfo, UserData: { [any]: any }, Type : \"Blockcast\", CFrame: CFrame, ID: number }",
            "source": {
                "line": 503,
                "path": "src/TypeDefinitions.luau"
            }
        },
        {
            "name": "ActiveCastData",
            "desc": "Represents an active sphere cast data.",
            "lua_type": "{ Caster: BaseCastData | { SerialSimulation: any}, StateInfo: CastStateInfo, RayInfo: CastRayInfo, UserData: { [any]: any }, Type : \"Spherecast\", CFrame: CFrame, ID: number }",
            "source": {
                "line": 521,
                "path": "src/TypeDefinitions.luau"
            }
        }
    ],
    "name": "TypeDefinitions",
    "desc": "Type definitions for strict-typing.",
    "tags": [
        "Types"
    ],
    "source": {
        "line": 15,
        "path": "src/TypeDefinitions.luau"
    }
}