import { HarnessPlugin } from '@energy8platform/harness'; /** Stable section identifiers — used to toggle whole sections on/off from the plugin. */ type SectionKey = 'geometry' | 'motion' | 'anticipation' | 'cascade' | 'win' | 'features'; /** * `@energy8platform/game-engine/harness` — node-only entry. * * Contributes the reel-config **panel** to `@energy8platform/harness`: a docked * right sidebar that tunes a running game's ReelSystem live. Pair it with * `mountReelDevBridge` (from `@energy8platform/game-engine/devtools`) in the game. * * Usage in a game's vite.config: * import { createHarness } from '@energy8platform/harness'; * import { reelDevtoolsPlugin } from '@energy8platform/game-engine/harness'; * createHarness({ plugins: [ reelDevtoolsPlugin({ sections: { geometry: false } }) ] }); * * Node-only: resolves the built, self-contained panel-client ESM the harness serves. */ interface ReelDevtoolsPluginOptions { /** Sidebar header / tab label. Default 'Reels'. */ title?: string; /** * Toggle whole sections of the reel panel. A missing key is shown; set a key to * `false` to hide (and lock) that section — e.g. `{ geometry: false }` to disable * live geometry editing. Sections: geometry · motion · anticipation · cascade · win · features. */ sections?: Partial>; } declare function reelDevtoolsPlugin(opts?: ReelDevtoolsPluginOptions): HarnessPlugin; export { reelDevtoolsPlugin }; export type { ReelDevtoolsPluginOptions };