A type registry for @universal-ember/table Plugin's Preferences. Meant to be declaration-merged so string lookups resolve to the correct type.

And so that accessing the full "preferences" object from "persist" and within "restore" can be fully typed. This also helps out with Glint, as unknown types are not allowed to be rendered

As a plugin author, to help define what your preferences shape is, you may

import { type PluginPreferences } from '@universal-ember/table/plugins';

interface SortingPreferences extends PluginPreferences {

}

declare module '@universal-ember/table/plugins' {
interface Registry {
// The key *must* match the same of the class
Sorting: SortingPreferences;
}
}
interface Registry {
    "column-reordering"?: ColumnReorderingPreferences;
    "column-visibility"?: ColumnVisibilityPreferences;
    ColumnReordering?: ColumnReorderingPreferences;
    ColumnResizing?: ColumnResizePreferences;
    ColumnVisibility?: ColumnVisibilityPreferences;
    sorting?: SortingPreferences;
    Sorting?: SortingPreferences;
}

Properties

"column-reordering"?: ColumnReorderingPreferences
"column-visibility"?: ColumnVisibilityPreferences
ColumnReordering?: ColumnReorderingPreferences
ColumnResizing?: ColumnResizePreferences
ColumnVisibility?: ColumnVisibilityPreferences
sorting?: SortingPreferences
Sorting?: SortingPreferences