A plugin is an object which has following properties.
Plugin Interface
name
- Type:
string
- Required:
true
Required property, the plugin name.
apply
- Type:
(api: SaberInstance, options: any) => void
- Required:
true
A function to invoke.
filterPlugins
- Type:
FilterPlugins
- Required:
false
Filter the plugins, you can use it to add or remove plugins.
type FilterPlugins = (plugins: Plugin[], options: any) => Plugins[]
interface Plugin {
/* Plugin name */
name: string
apply: (api: SaberInstance, options?: any) => void
filterPlugins: FilterPlugins
/* Plugin options */
options?: any
/* The path to the plugin, only used in logs */
location?: string
}