import type { DbManager } from "./DbManager";
/**
 * DbHandler - IPC layer for database operations
 *
 * Provides two sets of endpoints:
 * 1. Regular endpoints - require "db/rw" permission, automatically scoped to caller's appId
 * 2. Superuser endpoints - require "db/superuser" permission for cross-namespace access
 */
export declare class DbHandler {
    private dbManager;
    constructor(dbManager: DbManager);
    /**
     * Get a value from database (scoped to caller's app)
     */
    handleGet(args: {
        key: string;
        _callerAppId: string;
    }): Promise<{
        value: string | undefined;
    }>;
    /**
     * Set a value in database (scoped to caller's app)
     */
    handleSet(args: {
        key: string;
        value: string;
        _callerAppId: string;
    }): Promise<{
        success: boolean;
    }>;
    /**
     * Delete a key from database (scoped to caller's app)
     */
    handleDelete(args: {
        key: string;
        _callerAppId: string;
    }): Promise<{
        success: boolean;
    }>;
    /**
     * Check if a key exists (scoped to caller's app)
     */
    handleHas(args: {
        key: string;
        _callerAppId: string;
    }): Promise<{
        exists: boolean;
    }>;
    /**
     * Clear all keys (scoped to caller's app)
     */
    handleClear(args: {
        _callerAppId: string;
    }): Promise<{
        success: boolean;
    }>;
    /**
     * List all keys (scoped to caller's app)
     */
    handleList(args: {
        _callerAppId: string;
    }): Promise<{
        keys: string[];
    }>;
    /**
     * Get a value from any app's namespace (superuser only)
     */
    handleGetSuperuser(args: {
        appId: string;
        key: string;
    }): Promise<{
        value: string | undefined;
    }>;
    /**
     * Set a value in any app's namespace (superuser only)
     */
    handleSetSuperuser(args: {
        appId: string;
        key: string;
        value: string;
    }): Promise<{
        success: boolean;
    }>;
    /**
     * Delete a key from any app's namespace (superuser only)
     */
    handleDeleteSuperuser(args: {
        appId: string;
        key: string;
    }): Promise<{
        success: boolean;
    }>;
    /**
     * Check if a key exists in any app's namespace (superuser only)
     */
    handleHasSuperuser(args: {
        appId: string;
        key: string;
    }): Promise<{
        exists: boolean;
    }>;
    /**
     * Clear all keys in any app's namespace (superuser only)
     */
    handleClearSuperuser(args: {
        appId: string;
    }): Promise<{
        success: boolean;
    }>;
    /**
     * List all keys in any app's namespace (superuser only)
     */
    handleListSuperuser(args: {
        appId: string;
    }): Promise<{
        keys: string[];
    }>;
}
//# sourceMappingURL=DbHandler.d.ts.map