FilterRegistration
Registration options for a filter.
Signature
export interface FilterRegistrationProperties
6Methods
0No methods.
Properties
name: RegistryFilterName;The canonical filter name. Used as the registry identity/index key. Unless {@link FilterRegistration.wireName} is set, it is also the key written into the wire payload.
wireName?: string;The key actually written into the wire payload, when it differs from {@link FilterRegistration.name}. Needed when two distinct filters share the same wire key in different envelopes — e.g. the `lavadspx-plugin` echo (`pluginFilters.echo`, flat) and the `lavalink-filter-plugin` echo (`pluginFilters["lavalink-filter-plugin"].echo`, nested) both write `echo` but must be registered under different canonical names so the registry can resolve each unambiguously.
scope: FilterScope;Where the filter lives in the payload envelope.
pluginName?: RegistryPluginName;The Lavalink plugin that owns this filter — relevant when `scope === FilterScope.Plugin`. When provided, the filter is nested under `pluginFilters[pluginName][name]` (Lavalink spec). When omitted on a Plugin-scoped filter, the filter is placed flat at `pluginFilters[name]`.
capability?: RegistryCapability;The plugin capability that backs this filter — used to validate via {@link PluginRegistry} at apply time. Recommended whenever `scope === FilterScope.Plugin`.
aliases?: string[];Alternative names that should resolve to this same filter (e.g. fork renames sharing the same payload shape). Aliases that collide with an already-registered canonical name are ignored to avoid hijacking.