local u=require("\064\108\117\110\101\047\115\101\114\100\101")local C=require("\046\046\047\105\109\112\108")return(((C("\068\097\116\097\083\116\111\114\101\073\110\099\114\101\109\101\110\116\079\112\116\105\111\110\115")):rprop("\077\101\116\097\100\097\116\097","")):method("\083\101\116\077\101\116\097\100\097\116\097",function(N,O)C.set_rprop("\068\097\116\097\083\116\111\114\101\073\110\099\114\101\109\101\110\116\079\112\116\105\111\110\115",N,"\077\101\116\097\100\097\116\097",u.encode("\106\115\111\110",O))end)):method("\071\101\116\077\101\116\097\100\097\116\097",function(C)return u.decode("\106\115\111\110",C.Metadata)end)

-- ds_increment_opts
-- implements a mock datastore increment options instance for lune

local serde = require("@lune/serde")
local impl = require("../impl")

return impl("DataStoreIncrementOptions")
	:rprop("Metadata", "")
	:method("SetMetadata", function(instance, new_metadata)
		impl.set_rprop(
			"DataStoreIncrementOptions",
			instance,
			"Metadata",
			serde.encode("json", new_metadata)
		)
	end)
	:method("GetMetadata", function(instance)
		return serde.decode("json", instance.Metadata)
	end)
