/**
 * Alerts capability — collection-based internal alert system.
 *
 * Multiple providers can register. Each provider filters by EventBus category
 * and creates/updates alerts. The built-in Alert Center addon persists alerts
 * in the DB and serves them to the admin UI.
 */
import { z } from 'zod';
import { type InferProvider } from './capability-definition.js';
export declare const AlertSeveritySchema: z.ZodEnum<{
    info: "info";
    error: "error";
    success: "success";
    warning: "warning";
}>;
export declare const AlertStatusSchema: z.ZodEnum<{
    active: "active";
    failed: "failed";
    "in-progress": "in-progress";
    completed: "completed";
    dismissed: "dismissed";
}>;
export declare const AlertSourceSchema: z.ZodObject<{
    type: z.ZodString;
    id: z.ZodString;
}, z.core.$strip>;
export declare const AlertSchema: z.ZodObject<{
    id: z.ZodString;
    category: z.ZodString;
    severity: z.ZodEnum<{
        info: "info";
        error: "error";
        success: "success";
        warning: "warning";
    }>;
    title: z.ZodString;
    message: z.ZodString;
    status: z.ZodEnum<{
        active: "active";
        failed: "failed";
        "in-progress": "in-progress";
        completed: "completed";
        dismissed: "dismissed";
    }>;
    progress: z.ZodOptional<z.ZodNumber>;
    read: z.ZodBoolean;
    createdAt: z.ZodNumber;
    updatedAt: z.ZodNumber;
    source: z.ZodOptional<z.ZodObject<{
        type: z.ZodString;
        id: z.ZodString;
    }, z.core.$strip>>;
    metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, z.core.$strip>;
export type AlertSeverity = z.infer<typeof AlertSeveritySchema>;
export type AlertStatus = z.infer<typeof AlertStatusSchema>;
export type Alert = z.infer<typeof AlertSchema>;
export declare const alertsCapability: {
    readonly name: "alerts";
    readonly scope: "system";
    readonly mode: "singleton";
    readonly methods: {
        readonly emit: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
            id: z.ZodString;
            category: z.ZodString;
            severity: z.ZodEnum<{
                info: "info";
                error: "error";
                success: "success";
                warning: "warning";
            }>;
            title: z.ZodString;
            message: z.ZodString;
            status: z.ZodEnum<{
                active: "active";
                failed: "failed";
                "in-progress": "in-progress";
                completed: "completed";
                dismissed: "dismissed";
            }>;
            progress: z.ZodOptional<z.ZodNumber>;
            read: z.ZodBoolean;
            createdAt: z.ZodNumber;
            updatedAt: z.ZodNumber;
            source: z.ZodOptional<z.ZodObject<{
                type: z.ZodString;
                id: z.ZodString;
            }, z.core.$strip>>;
            metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
        }, z.core.$strip>, z.ZodVoid, "mutation">;
        readonly update: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
            alertId: z.ZodString;
            patch: z.ZodObject<{
                id: z.ZodOptional<z.ZodString>;
                category: z.ZodOptional<z.ZodString>;
                severity: z.ZodOptional<z.ZodEnum<{
                    info: "info";
                    error: "error";
                    success: "success";
                    warning: "warning";
                }>>;
                title: z.ZodOptional<z.ZodString>;
                message: z.ZodOptional<z.ZodString>;
                status: z.ZodOptional<z.ZodEnum<{
                    active: "active";
                    failed: "failed";
                    "in-progress": "in-progress";
                    completed: "completed";
                    dismissed: "dismissed";
                }>>;
                progress: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
                read: z.ZodOptional<z.ZodBoolean>;
                createdAt: z.ZodOptional<z.ZodNumber>;
                updatedAt: z.ZodOptional<z.ZodNumber>;
                source: z.ZodOptional<z.ZodOptional<z.ZodObject<{
                    type: z.ZodString;
                    id: z.ZodString;
                }, z.core.$strip>>>;
                metadata: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
            }, z.core.$strip>;
        }, z.core.$strip>, z.ZodVoid, "mutation">;
        readonly list: import("./capability-definition.js").CapabilityMethodSchema<z.ZodOptional<z.ZodObject<{
            unreadOnly: z.ZodOptional<z.ZodBoolean>;
            limit: z.ZodOptional<z.ZodNumber>;
        }, z.core.$strip>>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
            id: z.ZodString;
            category: z.ZodString;
            severity: z.ZodEnum<{
                info: "info";
                error: "error";
                success: "success";
                warning: "warning";
            }>;
            title: z.ZodString;
            message: z.ZodString;
            status: z.ZodEnum<{
                active: "active";
                failed: "failed";
                "in-progress": "in-progress";
                completed: "completed";
                dismissed: "dismissed";
            }>;
            progress: z.ZodOptional<z.ZodNumber>;
            read: z.ZodBoolean;
            createdAt: z.ZodNumber;
            updatedAt: z.ZodNumber;
            source: z.ZodOptional<z.ZodObject<{
                type: z.ZodString;
                id: z.ZodString;
            }, z.core.$strip>>;
            metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
        }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
        readonly getUnreadCount: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodNumber, import("./capability-definition.js").CapabilityMethodKind>;
        readonly markRead: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
            alertId: z.ZodString;
        }, z.core.$strip>, z.ZodVoid, "mutation">;
        readonly markAllRead: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodVoid, "mutation">;
        readonly dismiss: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
            alertId: z.ZodString;
        }, z.core.$strip>, z.ZodVoid, "mutation">;
    };
};
export type IAlertsProvider = InferProvider<typeof alertsCapability>;
//# sourceMappingURL=alerts.cap.d.ts.map