{"id":"thehehfocus/attributes-typed","name":"attributes-typed","scope":"thehehfocus","platform":"roblox","description":"Typed luau only version of roblox attributes.","version":"0.1.0","latest":"0.1.0","versions":["0.1.0"],"license":"MIT","licenseRating":"safe","licenseCaveats":["The package archive does not include its license text; the license is declared in its manifest metadata."],"licenseVerified":false,"dependencies":{},"integrity":"b5fa20b2797c9d09fd182e29533ac5632cadce6f7b00a0c4f5f81ca656b9ad8b","likes":0,"downloads":0,"install":"forest install thehehfocus/attributes-typed","url":"https://forest.dev/p/roblox/thehehfocus/attributes-typed","files":"https://api.forest.dev/ai/package/roblox/thehehfocus/attributes-typed/files","readme":"Roblox attributes turned into lightweight tables. With type support. <br>\r\nHas replication and batching. <br>\r\n(Works on any replicatable value as well, not just instances.)\r\n\r\nUsage: \r\n```luau\r\nlocal BetterAttributes = require(game.ReplicatedStorage.BetterAttributes)\r\n\r\nlocal baseplate = workspace:WaitForChild(\"Baseplate\")\r\n\r\nlocal Type = BetterAttributes.RegisterType({\r\n\tHello = 1,\r\n\tblah = true,\r\n\tokok = {\r\n\t\tno = false\r\n\t}\r\n})\r\n\r\nType.AttributeChanged(baseplate, function(attribute, value)\r\n\tprint(attribute, value)\r\nend, Type.A.Hello) -- Listen to any \"Hello\" attribute change.\r\n\r\ntask.wait(3)\r\n\r\nType.SetAttribute(baseplate, Type.A.Hello, 5)\r\nType.SetAttribute(baseplate, Type.A.Hello, true) -- Will typeerror since 'Hello' attribute is a number.\r\n```\r\n\r\n","readmeTruncated":false}