addRule('key', [ 'type' => self::TYPE_STRING, 'description' => 'Attribute Key.', 'default' => '', 'example' => 'fullName', ]) ->addRule('type', [ 'type' => self::TYPE_STRING, 'description' => 'Attribute type.', 'default' => '', 'example' => 'string', ]) ->addRule('status', [ 'type' => self::TYPE_STRING, 'description' => 'Attribute status. Possible values: `available`, `processing`, `deleting`, or `failed`', 'default' => '', 'example' => 'string', ]) ->addRule('required', [ 'type' => self::TYPE_BOOLEAN, 'description' => 'Is attribute required?', 'default' => false, 'example' => true, ]) ->addRule('array', [ 'type' => self::TYPE_BOOLEAN, 'description' => 'Is attribute an array?', 'default' => false, 'example' => false, 'require' => false ]) ->addRule('format', [ 'type' => self::TYPE_FLOAT, 'description' => 'Float format.', 'default' => null, 'example' => \json_encode([ 'name' => APP_DATABASE_ATTRIBUTE_FLOAT_RANGE, 'min' => 1.5, 'max' => 2.5, ]), 'array' => false, 'require' => false, ]) ->addRule('default', [ 'type' => self::TYPE_FLOAT, 'description' => 'Default value for attribute when not provided. Cannot be set when attribute is required.', 'default' => null, 'example' => 2.5, 'array' => false, 'require' => false, ]) ; } /** * Get Name * * @return string */ public function getName():string { return 'AttributeFloat'; } /** * Get Collection * * @return string */ public function getType():string { return Response::MODEL_ATTRIBUTE_FLOAT; } }