import { If, Var } from "./state"; type NumVarSimple = Var | number; type NumVar = T extends { length: 5; } ? NumVarSimple | T[number] : NumVar<[...T, NumVarSimple | If]>; export declare namespace New { /** * Creates a new UDim2 with the same arguments as the default constructor. */ type UDim2 = { _datatype: ["udim2", number, XS, XO, YS, YO]; }; namespace UDim2 { /** * Creates a new UDim2 using X and Y as offset. */ type FromOffset = UDim2<0, X, 0, Y>; /** * Creates a new UDim2 using X and Y as scale. */ type FromScale = UDim2; } /** * Creates a new UDim with the same arguments as the default constructor. */ type UDim = { _datatype: ["udim", number, S, O]; }; /** * Creates a new Vector2 with the same arguments as the default constructor. */ type Vector2 = { _datatype: ["vector2", number, X, Y]; }; /** * Creates a new Color3, using the `Color3.fromRGB` constructor which means the values must be 0-255. */ type Color3 = { _datatype: ["color3", number, R, G, B]; }; } export {};