utility class to help with autocompletion / documentation in the editor while while defining the signature of custom plugins.

interface PluginSignature {
    Meta?: { Column?: unknown; Row?: unknown; Table?: unknown };
    Options?: { Column?: unknown; Plugin?: unknown };
}

Hierarchy (View Summary)

Properties

Properties

Meta?: { Column?: unknown; Row?: unknown; Table?: unknown }

Meta is how plugins can manage per-{table,columns,rows} state, event listeners, and general public API

Type declaration

  • OptionalColumn?: unknown

    If a plugin has Column meta/state, the shape of that state can be described here

  • OptionalRow?: unknown

    If a plugin has Row meta/state, the shape of that state can be described here

  • OptionalTable?: unknown

    If a plugin has Table meta/state, the shape of that state can be described here

Options?: { Column?: unknown; Plugin?: unknown }

Type declaration

  • OptionalColumn?: unknown

    If a plugin has options configurable per column, those can be specified here

    These are passed via the the forColumn API

    headlessTable(this?, {
    // ...
    columns: () => [
    MyPlugin.forColumn(() => {
    // the return value here is this is Signature['Options']['Column']
    return {};
    })
    ]
    })
  • OptionalPlugin?: unknown

    If a plugin has options configurable for the whole table, those can be specified here.

    These are passed via the the withOptions API

    headlessTable(this?, {
    // ...
    plugins: [
    MyPlugin.withOptions(() => {
    // the return value here is this is Signature['Options']['Plugin']
    return {};
    })
    ]
    })