import { CleanModeConfig } from './cleanModeConfig.js';
/**
 * Registry mapping device models to their extra clean mode capabilities.
 *
 * === HOW TO ADD SUPPORT FOR YOUR DEVICE ===
 * Add a new entry with the device model and the list of extra modes it supports.
 * Example (device that only has VacFollowedByMop):
 *   [DeviceModel.MY_NEW_DEVICE]: [vacFollowedByMopModeConfig],
 *
 * === HOW TO ADD A NEW CLEAN MODE ===
 * 1. Add the label to CleanModeDisplayLabel in cleanModeConfig.ts
 * 2. Add the mode entry in CleanModeLabelInfo in cleanModeConfig.ts
 * 3. Create a new CleanModeConfig const in cleanModeConfig.ts and export it
 * 4. If the mode needs special handling, add a new handler in handlers/
 * 5. Register the handler in buildBehaviorConfig() in behaviorConfig.ts
 * 6. Add the mode to the relevant device entries below
 */
export declare const DEVICE_EXTRA_MODES: Partial<Record<string, CleanModeConfig[]>>;
/**
 * Get the extra clean modes for a device beyond the base modes.
 * Returns an empty array if the device has no extra modes.
 */
export declare function getExtraModes(model: string): CleanModeConfig[];
/**
 * Check if a device supports the Smart Plan clean mode.
 */
export declare function hasSmartPlan(model: string): boolean;
/**
 * Get all clean modes for a device: extra modes first, then base modes.
 */
export declare function getAllModesForDevice(model: string): CleanModeConfig[];
/**
 * Get all known clean mode configs across all devices and base modes (deduped by mode number).
 * Useful for mode label lookups when the device model is not available.
 */
export declare function getAllKnownModeConfigs(): CleanModeConfig[];
//# sourceMappingURL=deviceCapabilityRegistry.d.ts.map