/**
 * Notification types for buffer events
 */
export type NotificationType = string;
export namespace NotificationType {
    let FILE_MODIFIED_ON_DISK: string;
    let FILE_SIZE_CHANGED: string;
    let FILE_DELETED: string;
    let SAVE_SKIPPED: string;
    let ATOMIC_SAVE_STARTED: string;
    let SAVE_COMPLETED: string;
    let SAVE_METADATA_UPDATE_FAILED: string;
    let TEMP_CLEANUP: string;
    let TEMP_CLEANUP_FAILED: string;
    let PARTIAL_DATA_DETECTED: string;
    let EMERGENCY_MISSING_DATA: string;
    let PAGE_SPLIT: string;
    let PAGE_EVICTED: string;
    let PAGE_CONFLICT_DETECTED: string;
    let PAGE_REBASE_SUCCESS: string;
    let PAGE_REBASE_FAILED: string;
    let BUFFER_DETACHED: string;
    let MEMORY_PRESSURE: string;
    let STORAGE_ERROR: string;
    let LARGE_OPERATION: string;
    let SLOW_STORAGE: string;
    let UNDO_TRANSACTION_STARTED: string;
    let UNDO_TRANSACTION_COMMITTED: string;
    let UNDO_TRANSACTION_ROLLED_BACK: string;
    let UNDO_OPERATION_MERGED: string;
    let UNDO_OPERATION_RECORDED: string;
    let UNDO_APPLIED: string;
    let UNDO_FAILED: string;
    let REDO_APPLIED: string;
    let REDO_FAILED: string;
}
/**
 * Notification for buffer events
 * @class BufferNotification
 */
export class BufferNotification {
    /**
     * Create a buffer notification
     * @param {string} type - Notification type from NotificationType enum
     * @param {string} severity - Severity level ('info', 'warning', 'error', 'critical')
     * @param {string} message - Human-readable message
     * @param {Object} [metadata={}] - Additional notification data
     */
    constructor(type: string, severity: string, message: string, metadata?: Object);
    type: string;
    severity: string;
    message: string;
    metadata: Object;
    timestamp: Date;
}
//# sourceMappingURL=notifications.d.ts.map