### `public function fetch($args = [], $output = null)`
fetch filter based on ID or WP_Query args
Filters are stored as posts. Check WP_Query docs to learn all args accepted in the $args parameter (@see https://developer.wordpress.org/reference/classes/wp_query/) You can also use a mapped property, such as name and description, as an argument and it will be mapped to the appropriate WP_Query argument
**Parameters:**
*`$args` — array — WP_Query args || int $args the filter id
*`$output` — string — The desired output format (@see \Tainacan\Repositories\Repository::fetch_output() for possible values)
**Returns:** `\WP_Query|Array` — an instance of wp query OR array of entities;
### `public function register_filter_type( $class_name )`
register field types class on array of types
**Parameters:**
*`string` — $class_name — | object The class name or the instance
### `public function deregister_filter_type( $class_name )`
register field types class on array of types
**Parameters:**
*`string` — $class_name — | object The class name or the instance
### `public function fetch_filter_types( $output = 'CLASS')`
fetch all registered filter type classes
Possible outputs are: CLASS (default) - returns the Class name of of filter types registered NAME - return an Array of the names of filter types registered
**Parameters:**
*`string` — $output — CLASS | NAME
**Returns:** `array` — of Entities\Filter_Types\Filter_Type classes path name
### `public function fetch_supported_filter_types($types)`
fetch only supported filters for the type specified
**Parameters:**
*`string` — ( — || array ) $types Primitve types of field ( float, string, int)
**Returns:** `array` — Filters supported by the primitive types passed in $types