Skip to main content

T

T is a runtime typecheck for Roblox.

local assertArrayOfNumbers = T.array(T.number)

assertArrayOfNumbers({1, 2, 3}) -- true

Types

CheckerFn

type CheckerFn = (valueany) → (
boolean,
string?
)

CheckerFn is a function that takes a value and returns a boolean and an optional error message.

Functions

type

T.type(typeNamestring) → CheckerFn

typeof

T.typeof(typeNamestring) → CheckerFn

any

T.any(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

matches any type except nil

boolean

T.boolean(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Lua primitive boolean type

thread

T.thread(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Lua primitive thread type

function

T.function(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Lua primitive callback type

nil

T.nil(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Lua primitive none type

string

T.string(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Lua primitive string type

table

T.table(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Lua primitive table type

userdata

T.userdata(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Lua primitive userdata type

number

T.number(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures value is a number and non-NaN

nan

T.nan(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures value is NaN

Axes

T.Axes(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Axes type

BrickColor

T.BrickColor(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox BrickColor type

CatalogSearchParams

T.CatalogSearchParams(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox CatalogSearchParams type

CFrame

T.CFrame(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox CFrame type

Color3

T.Color3(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Color3 type

ColorSequence

T.ColorSequence(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox ColorSequence type

ColorSequenceKeypoint

T.ColorSequenceKeypoint(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox ColorSequenceKeypoint type

DateTime

T.DateTime(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox DateTime type

DockWidgetPluginGuiInfo

T.DockWidgetPluginGuiInfo(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox DockWidgetPluginGuiInfo type

Enum

T.Enum(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Enum type

EnumItem

T.EnumItem(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox EnumItem type

Enums

T.Enums(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Enums type

Faces

T.Faces(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Faces type

FloatCurveKey

T.FloatCurveKey(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox FloatCurveKey type

Font

T.Font(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Font type

Instance

T.Instance(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Instance type

NumberRange

T.NumberRange(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox NumberRange type

NumberSequence

T.NumberSequence(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox NumberSequence type

NumberSequenceKeypoint

T.NumberSequenceKeypoint(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox NumberSequenceKeypoint type

OverlapParams

T.OverlapParams(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox OverlapParams type

PathWaypoint

T.PathWaypoint(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox PathWaypoint type

PhysicalProperties

T.PhysicalProperties(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox PhysicalProperties type

Random

T.Random(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Random type

Ray

T.Ray(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Ray type

RaycastParams

T.RaycastParams(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox RaycastParams type

RaycastResult

T.RaycastResult(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox RaycastResult type

RBXScriptConnection

T.RBXScriptConnection(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox RBXScriptConnection type

RBXScriptSignal

T.RBXScriptSignal(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox RBXScriptSignal type

Rect

T.Rect(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Rect type

Region3

T.Region3(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Region3 type

Region3int16

T.Region3int16(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Region3int16 type

TweenInfo

T.TweenInfo(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox TweenInfo type

UDim

T.UDim(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox UDim type

UDim2

T.UDim2(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox UDim2 type

Vector2

T.Vector2(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Vector2 type

Vector2int16

T.Vector2int16(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Vector2int16 type

Vector3

T.Vector3(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Vector3 type

Vector3int16

T.Vector3int16(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures Roblox Vector3int16 type

literal

T.literal(
......any--

The literal to use

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a given literal value

keyOf

T.keyOf(
keyTabletable--

The table to get keys from

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

Returns a t.union of each key in the table as a t.literal

valueOf

T.valueOf(
valueTabletable--

The table to get values from

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

Returns a t.union of each value in the table as a t.literal

integer

T.integer(
valueany--

The value to check against

) → (
boolean,--

True iff the condition is satisfied, false otherwise

string?
)

ensures value is an integer

numberMin

T.numberMin(
minnumber--

The minimum to use

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a number where min <= value

numberMax

T.numberMax(
maxnumber--

The maximum to use

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a number where value <= max

numberMinExclusive

T.numberMinExclusive(
minnumber--

The minimum to use

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a number where min < value

numberMaxExclusive

T.numberMaxExclusive(
maxnumber--

The maximum to use

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a number where value < max

numberPositive

T.numberPositive() → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a number where value > 0

numberNegative

T.numberNegative() → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a number where value < 0

numberConstrained

T.numberConstrained(
minnumber,--

The minimum to use

maxnumber--

The maximum to use

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a number where min <= value <= max

numberConstrainedExclusive

T.numberConstrainedExclusive(
minnumber,--

The minimum to use

maxnumber--

The maximum to use

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a number where min < value < max

match

T.match(
patternstring--

pattern to check against

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value matches string pattern

optional

T.optional(
checkfunction--

The check to use

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is either nil or passes check

tuple

T.tuple(
......any--

The type definition for the tuples

) → CheckerFn--

A function that will return true iff the condition is passed

matches given tuple against tuple type definition

keys

T.keys(checkThefunctiontousetocheckthekeys) → CheckerFn--

A function that will return true iff the condition is passed

ensures all keys in given table pass check

values

T.values(
checkany--

The function to use to check the values

) → CheckerFn--

A function that will return true iff the condition is passed

ensures all values in given table pass check

map

T.map(
keyCheckany,--

The function to use to check the keys

valueCheckany--

The function to use to check the values

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a table and all keys pass keyCheck and all values pass valueCheck

set

T.set(
valueCheckany--

The function to use to check the values

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is a table and all keys pass valueCheck and all values are true

array

T.array(
checkCheckerFn--

The check to compare all values with

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is an array and all values of the array match check

strictArray

T.strictArray(
......any--

The check to compare all values with

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is an array of a strict makeup and size

union

T.union(
......any--

The checks to union

) → CheckerFn--

A function that will return true iff the condition is passed

creates a union type

some

T.some() → ()

Alias for t.union

intersection

T.intersection(
......any--

The checks to intersect

) → CheckerFn--

A function that will return true iff the condition is passed

creates an intersection type

every

T.every() → ()

Alias for t.intersection

interface

T.interface(
checkTabletable--

The interface definition

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value matches given interface definition

strictInterface

T.strictInterface(
checkTabletable--

The interface definition

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value matches given interface definition strictly

instanceOf

T.instanceOf(
classNamestring,--

The class name to check for

childTabletable
) → CheckerFn--

A function that will return true iff the condition is passed

ensure value is an Instance and it's ClassName matches the given ClassName

instanceIsA

T.instanceIsA(
classNamestring,--

The class name to check for

childTabletable
) → CheckerFn--

A function that will return true iff the condition is passed

ensure value is an Instance and it's ClassName matches the given ClassName by an IsA comparison

enum

T.enum(
enumany--

The enum to check

) → CheckerFn--

A function that will return true iff the condition is passed

ensures value is an enum of the correct type

customEnum

T.customEnum(
enumSpecany--

The enum to check

) → CheckerFn--

A function that will return true if the condition is passed

ensures a value is a custom enum

wrap

T.wrap(
callbackfunction,--

The function to wrap

checkArgsfunction--

The function to use to check arguments in the assert

) → CheckerFn--

A function that first asserts using checkArgs and then calls callback

wraps a callback in an assert with checkArgs

strict

T.strict(
checkCheckerFn--

The function to wrap with an assert

) → CheckerFn--

A function that simply wraps the given check in an assert

asserts a given check

children

T.children(
checkTabletable--

The table to check against

) → CheckerFn--

A function that checks an instance tree

Takes a table where keys are child names and values are functions to check the children against. Pass an instance tree into the function. If at least one child passes each check, the overall check passes.

Warning! If you pass in a tree with more than one child of the same name, this function will always return false

Show raw api
{
    "functions": [
        {
            "name": "type",
            "desc": "",
            "params": [
                {
                    "name": "typeName",
                    "desc": "",
                    "lua_type": "string"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "CheckerFn\n"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 26,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "typeof",
            "desc": "",
            "params": [
                {
                    "name": "typeName",
                    "desc": "",
                    "lua_type": "string"
                }
            ],
            "returns": [
                {
                    "desc": "",
                    "lua_type": "CheckerFn\n"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 41,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "any",
            "desc": "matches any type except nil",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 62,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "boolean",
            "desc": "ensures Lua primitive boolean type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 82,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "thread",
            "desc": "ensures Lua primitive thread type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 94,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "function",
            "desc": "ensures Lua primitive callback type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 106,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "nil",
            "desc": "ensures Lua primitive none type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 119,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "string",
            "desc": "ensures Lua primitive string type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 132,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "table",
            "desc": "ensures Lua primitive table type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 144,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "userdata",
            "desc": "ensures Lua primitive userdata type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 156,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "number",
            "desc": "ensures value is a number and non-NaN",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 167,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "nan",
            "desc": "ensures value is NaN",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 189,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Axes",
            "desc": "ensures Roblox Axes type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 214,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "BrickColor",
            "desc": "ensures Roblox BrickColor type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 226,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "CatalogSearchParams",
            "desc": "ensures Roblox CatalogSearchParams type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 238,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "CFrame",
            "desc": "ensures Roblox CFrame type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 250,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Color3",
            "desc": "ensures Roblox Color3 type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 262,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "ColorSequence",
            "desc": "ensures Roblox ColorSequence type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 274,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "ColorSequenceKeypoint",
            "desc": "ensures Roblox ColorSequenceKeypoint type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 286,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "DateTime",
            "desc": "ensures Roblox DateTime type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 298,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "DockWidgetPluginGuiInfo",
            "desc": "ensures Roblox DockWidgetPluginGuiInfo type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 310,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Enum",
            "desc": "ensures Roblox Enum type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 322,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "EnumItem",
            "desc": "ensures Roblox EnumItem type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 334,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Enums",
            "desc": "ensures Roblox Enums type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 346,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Faces",
            "desc": "ensures Roblox Faces type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 358,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "FloatCurveKey",
            "desc": "ensures Roblox FloatCurveKey type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 370,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Font",
            "desc": "ensures Roblox Font type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 382,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Instance",
            "desc": "ensures Roblox Instance type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 394,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "NumberRange",
            "desc": "ensures Roblox NumberRange type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 406,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "NumberSequence",
            "desc": "ensures Roblox NumberSequence type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 418,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "NumberSequenceKeypoint",
            "desc": "ensures Roblox NumberSequenceKeypoint type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 430,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "OverlapParams",
            "desc": "ensures Roblox OverlapParams type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 442,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "PathWaypoint",
            "desc": "ensures Roblox PathWaypoint type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 454,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "PhysicalProperties",
            "desc": "ensures Roblox PhysicalProperties type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 466,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Random",
            "desc": "ensures Roblox Random type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 478,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Ray",
            "desc": "ensures Roblox Ray type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 490,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "RaycastParams",
            "desc": "ensures Roblox RaycastParams type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 502,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "RaycastResult",
            "desc": "ensures Roblox RaycastResult type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 514,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "RBXScriptConnection",
            "desc": "ensures Roblox RBXScriptConnection type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 526,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "RBXScriptSignal",
            "desc": "ensures Roblox RBXScriptSignal type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 538,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Rect",
            "desc": "ensures Roblox Rect type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 550,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Region3",
            "desc": "ensures Roblox Region3 type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 562,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Region3int16",
            "desc": "ensures Roblox Region3int16 type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 574,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "TweenInfo",
            "desc": "ensures Roblox TweenInfo type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 586,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "UDim",
            "desc": "ensures Roblox UDim type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 598,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "UDim2",
            "desc": "ensures Roblox UDim2 type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 610,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Vector2",
            "desc": "ensures Roblox Vector2 type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 622,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Vector2int16",
            "desc": "ensures Roblox Vector2int16 type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 634,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Vector3",
            "desc": "ensures Roblox Vector3 type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 646,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "Vector3int16",
            "desc": "ensures Roblox Vector3int16 type",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 658,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "literal",
            "desc": "ensures value is a given literal value",
            "params": [
                {
                    "name": "...",
                    "desc": "The literal to use",
                    "lua_type": "...any"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 668,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "exactly",
            "desc": "DEPRECATED\nPlease use t.literal",
            "params": [],
            "returns": [],
            "function_type": "static",
            "ignore": true,
            "source": {
                "line": 697,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "keyOf",
            "desc": "Returns a t.union of each key in the table as a t.literal",
            "params": [
                {
                    "name": "keyTable",
                    "desc": "The table to get keys from",
                    "lua_type": "table"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 708,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "valueOf",
            "desc": "Returns a t.union of each value in the table as a t.literal",
            "params": [
                {
                    "name": "valueTable",
                    "desc": "The table to get values from",
                    "lua_type": "table"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 728,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "integer",
            "desc": "ensures value is an integer",
            "params": [
                {
                    "name": "value",
                    "desc": "The value to check against",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "True iff the condition is satisfied, false otherwise",
                    "lua_type": "boolean"
                },
                {
                    "desc": "",
                    "lua_type": "string?"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 748,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "numberMin",
            "desc": "ensures value is a number where min <= value",
            "params": [
                {
                    "name": "min",
                    "desc": "The minimum to use",
                    "lua_type": "number"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 769,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "numberMax",
            "desc": "ensures value is a number where value <= max",
            "params": [
                {
                    "name": "max",
                    "desc": "The maximum to use",
                    "lua_type": "number"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 792,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "numberMinExclusive",
            "desc": "ensures value is a number where min < value",
            "params": [
                {
                    "name": "min",
                    "desc": "The minimum to use",
                    "lua_type": "number"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 815,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "numberMaxExclusive",
            "desc": "ensures value is a number where value < max",
            "params": [
                {
                    "name": "max",
                    "desc": "The maximum to use",
                    "lua_type": "number"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 838,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "numberPositive",
            "desc": "ensures value is a number where value > 0",
            "params": [],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 860,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "numberNegative",
            "desc": "ensures value is a number where value < 0",
            "params": [],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 869,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "numberConstrained",
            "desc": "ensures value is a number where min <= value <= max",
            "params": [
                {
                    "name": "min",
                    "desc": "The minimum to use",
                    "lua_type": "number"
                },
                {
                    "name": "max",
                    "desc": "The maximum to use",
                    "lua_type": "number"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 880,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "numberConstrainedExclusive",
            "desc": "ensures value is a number where min < value < max",
            "params": [
                {
                    "name": "min",
                    "desc": "The minimum to use",
                    "lua_type": "number"
                },
                {
                    "name": "max",
                    "desc": "The maximum to use",
                    "lua_type": "number"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 910,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "match",
            "desc": "ensures value matches string pattern",
            "params": [
                {
                    "name": "pattern",
                    "desc": "pattern to check against",
                    "lua_type": "string"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 939,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "optional",
            "desc": "ensures value is either nil or passes check",
            "params": [
                {
                    "name": "check",
                    "desc": "The check to use",
                    "lua_type": "function"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 963,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "tuple",
            "desc": "matches given tuple against tuple type definition",
            "params": [
                {
                    "name": "...",
                    "desc": "The type definition for the tuples",
                    "lua_type": "...any"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 987,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "keys",
            "desc": "ensures all keys in given table pass check",
            "params": [
                {
                    "name": "check",
                    "desc": "",
                    "lua_type": "The function to use to check the keys"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1010,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "values",
            "desc": "ensures all values in given table pass check",
            "params": [
                {
                    "name": "check",
                    "desc": "The function to use to check the values",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1037,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "map",
            "desc": "ensures value is a table and all keys pass keyCheck and all values pass valueCheck",
            "params": [
                {
                    "name": "keyCheck",
                    "desc": "The function to use to check the keys",
                    "lua_type": "any"
                },
                {
                    "name": "valueCheck",
                    "desc": "The function to use to check the values",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1065,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "set",
            "desc": "ensures value is a table and all keys pass valueCheck and all values are true",
            "params": [
                {
                    "name": "valueCheck",
                    "desc": "The function to use to check the values",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1094,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "array",
            "desc": "ensures value is an array and all values of the array match check\n\n\n\t",
            "params": [
                {
                    "name": "check",
                    "desc": "The check to compare all values with",
                    "lua_type": "CheckerFn"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1109,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "strictArray",
            "desc": "ensures value is an array of a strict makeup and size\n\n\n\t",
            "params": [
                {
                    "name": "...",
                    "desc": "The check to compare all values with",
                    "lua_type": "...any"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1151,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "union",
            "desc": "creates a union type\n\n\n\t",
            "params": [
                {
                    "name": "...",
                    "desc": "The checks to union",
                    "lua_type": "...any"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1189,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "some",
            "desc": "Alias for t.union\n\t",
            "params": [],
            "returns": [],
            "function_type": "static",
            "source": {
                "line": 1209,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "intersection",
            "desc": "creates an intersection type\n\n\n\t",
            "params": [
                {
                    "name": "...",
                    "desc": "The checks to intersect",
                    "lua_type": "...any"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1220,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "every",
            "desc": "Alias for t.intersection\n\t",
            "params": [],
            "returns": [],
            "function_type": "static",
            "source": {
                "line": 1241,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "interface",
            "desc": "ensures value matches given interface definition\n\n\n\t",
            "params": [
                {
                    "name": "checkTable",
                    "desc": "The interface definition",
                    "lua_type": "table"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1255,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "strictInterface",
            "desc": "ensures value matches given interface definition strictly\n\n\n\t",
            "params": [
                {
                    "name": "checkTable",
                    "desc": "The interface definition",
                    "lua_type": "table"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1283,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "instanceOf",
            "desc": "ensure value is an Instance and it's ClassName matches the given ClassName",
            "params": [
                {
                    "name": "className",
                    "desc": "The class name to check for",
                    "lua_type": "string"
                },
                {
                    "name": "childTable",
                    "desc": "",
                    "lua_type": "table"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1318,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "instanceIsA",
            "desc": "ensure value is an Instance and it's ClassName matches the given ClassName by an IsA comparison",
            "params": [
                {
                    "name": "className",
                    "desc": "The class name to check for",
                    "lua_type": "string"
                },
                {
                    "name": "childTable",
                    "desc": "",
                    "lua_type": "table"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1358,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "enum",
            "desc": "ensures value is an enum of the correct type",
            "params": [
                {
                    "name": "enum",
                    "desc": "The enum to check",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true iff the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1395,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "customEnum",
            "desc": "ensures a value is a custom enum",
            "params": [
                {
                    "name": "enumSpec",
                    "desc": "The enum to check",
                    "lua_type": "any"
                }
            ],
            "returns": [
                {
                    "desc": "A function that will return true if the condition is passed",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1419,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "wrap",
            "desc": "wraps a callback in an assert with checkArgs\n\n\n\t",
            "params": [
                {
                    "name": "callback",
                    "desc": "The function to wrap",
                    "lua_type": "function"
                },
                {
                    "name": "checkArgs",
                    "desc": "The function to use to check arguments in the assert",
                    "lua_type": "function"
                }
            ],
            "returns": [
                {
                    "desc": "A function that first asserts using checkArgs and then calls callback",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1450,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "strict",
            "desc": "asserts a given check",
            "params": [
                {
                    "name": "check",
                    "desc": "The function to wrap with an assert",
                    "lua_type": "CheckerFn"
                }
            ],
            "returns": [
                {
                    "desc": "A function that simply wraps the given check in an assert",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1467,
                "path": "src/t/src/Shared/T.lua"
            }
        },
        {
            "name": "children",
            "desc": "Takes a table where keys are child names and values are functions to check the children against.\nPass an instance tree into the function.\nIf at least one child passes each check, the overall check passes.\n\nWarning! If you pass in a tree with more than one child of the same name, this function will always return false\n\n\n\t",
            "params": [
                {
                    "name": "checkTable",
                    "desc": "The table to check against",
                    "lua_type": "table"
                }
            ],
            "returns": [
                {
                    "desc": "A function that checks an instance tree",
                    "lua_type": "CheckerFn"
                }
            ],
            "function_type": "static",
            "source": {
                "line": 1489,
                "path": "src/t/src/Shared/T.lua"
            }
        }
    ],
    "properties": [],
    "types": [
        {
            "name": "CheckerFn",
            "desc": "CheckerFn is a function that takes a value and returns a boolean and an optional error message.",
            "lua_type": "(value: any) -> (boolean, string?)",
            "source": {
                "line": 19,
                "path": "src/t/src/Shared/T.lua"
            }
        }
    ],
    "name": "T",
    "desc": "T is a runtime typecheck for Roblox.\n\n```lua\nlocal assertArrayOfNumbers = T.array(T.number)\n\nassertArrayOfNumbers({1, 2, 3}) -- true\n```",
    "source": {
        "line": 13,
        "path": "src/t/src/Shared/T.lua"
    }
}