/**
 * Migration 089: Create supervisor_policies table (spec 093).
 *
 * Scope-based supervisor policy: scope_type determines the level
 * ('global', 'org', 'app', 'feature'), scope_id identifies the target
 * (nullable for global scope), and feature_id provides an optional
 * per-feature override within a scope.
 *
 * Resolution order: most specific scope first (feature > app > org > global).
 *
 * Indexes:
 *  - unique (scope_type, COALESCE(scope_id, ''), COALESCE(feature_id, ''))
 *    ensures at most one policy per scope tuple. SQLite expression indexes
 *    use COALESCE because NULL values are treated as distinct in regular
 *    UNIQUE indexes — we want NULL scope_id/feature_id to collide with itself.
 */
import type { MigrationParams } from 'umzug';
import type Database from 'better-sqlite3';
export declare function up({ context: db }: MigrationParams<Database.Database>): Promise<void>;
export declare function down({ context: db }: MigrationParams<Database.Database>): Promise<void>;
//# sourceMappingURL=089-create-supervisor-policies.d.ts.map