import { ClientConfigDoc, Products, KnownProductKey } from "../index"; import { Collection } from "mongodb"; export declare const getClientsConfigCollection: () => Collection; export declare const getClientConfig: (clientId: string) => Promise | null>; export declare const getClientDisplayName: (clientId: string) => Promise; export declare const getClientConfigByPhone: (phone: string) => Promise | null>; export declare const createClientConfigDoc: (clientConfig: ClientConfigDoc) => Promise; export declare function updateProductConfig(clientId: string, productKey: K, updates: Partial): Promise; export declare const getActiveScanId: (clientId: string) => Promise; /** * Returns the client's active scan ids as a list. * Falls back to wrapping the legacy singular `activeScanId` field when * `activeScanIds` is absent — lets clients on the old field keep working * without a data migration. */ export declare const getActiveScanIds: (clientId: string) => Promise; /** * @deprecated Use `addActiveScanId` instead — supports multiple simultaneously * active scans. This function overwrites the entire single-value field. */ export declare const updateActiveScanId: (clientId: string, scanId: string) => Promise; /** * Adds a scan id to the client's active list. Writes the full list back * (rather than a bare array append) so a client still on the legacy * singular field gets migrated instead of silently losing it. */ export declare const addActiveScanId: (clientId: string, scanId: string) => Promise; /** * @deprecated Use `removeActiveScanId` instead — removes a single scan from * the active list without clearing the others. */ export declare const clearActiveScanId: (clientId: string) => Promise; /** * Removes a single scan id from the active list. Also clears the legacy * singular field when it matches, so a not-yet-migrated client's removal * actually takes effect instead of silently no-op'ing. */ export declare const removeActiveScanId: (clientId: string, scanId: string) => Promise; /** Returns the scan whose content seeds the phone call's opening description, if one is set. */ export declare const getPrimaryScanId: (clientId: string) => Promise; /** * Sets the primary scan, replacing whatever was set before — exactly one * primary scan at a time. Throws if the client doesn't exist. */ export declare const setPrimaryScanId: (clientId: string, scanId: string) => Promise; /** * Clears the primary scan. Callers that need the opening description fall * back to the first active scan. Throws if the client doesn't exist. */ export declare const clearPrimaryScanId: (clientId: string) => Promise; export declare function listClientIdsWithConfiguredQuota(): Promise; export declare function incrementClientQuotaUsage(clientId: string, amount?: number): Promise; export declare function resetClientQuotaUsage(clientId: string): Promise; export { getClientQuotaState, updateQuotaAlertsConfig, markQuotaAlertSent, markQuotaExpiredSent, resetClientQuotaSettings, } from "../clients/clients.quota.getters"; //# sourceMappingURL=clientsConfig.getters.d.ts.map