/**
 * Admin adapter — control.
 *
 * Thin facade over operator-grade runtime actions: license management and
 * memory export/import. Exposes what already exists in the engines as a
 * library call so hosts can trigger it without going through MCP JSON-RPC.
 */
import type { LicenseStatus } from '../../licensing/index.js';
import type { MemoryEngine, MemoryExportBundle, MemoryImportResult, MemoryItem } from '../../engines/memory.js';
export interface MemoryExportOptions {
    limit?: number;
    scope?: MemoryItem['scope'];
    state?: MemoryItem['state'];
    sessionId?: string;
}
export interface ControlLicenseAdmin {
    /** Current license status (no I/O). */
    status(): LicenseStatus;
    /** Validate + persist a license key. Returns updated status. */
    activate(token: string): LicenseStatus;
    /** Remove the license key and reset to free tier. */
    deactivate(): void;
    /** Sync with the licensing backend. Requires network. */
    sync(): Promise<LicenseStatus>;
}
export interface ControlMemoryAdmin {
    /** Export in-memory items to a bundle. Requires ctx.memory. */
    export(options?: MemoryExportOptions): MemoryExportBundle;
    /** Import a bundle (from path or object). Requires ctx.memory. */
    import(input: {
        path?: string;
        bundle?: MemoryExportBundle;
    }): Promise<MemoryImportResult>;
}
export interface ControlAdmin {
    license: ControlLicenseAdmin;
    memory: ControlMemoryAdmin;
}
export declare function createControlAdmin(_repoRoot: string, memory?: MemoryEngine): ControlAdmin;
