import { FirebaseOptions } from "@angular/fire/app";
import { FeatureType } from "../../utils/enums";
export declare class Config {
    /**
     * Restrict Snippyly features to specific pages. You can specify partial URL strings.
     *
     * Default: All pages where snippyly script or snippyly web components are added.
     */
    urlAllowList?: string[];
    /**
     * Only allow the provided Snippyly features to run.
     *
     * Default: All features are enabled.
     */
    featureAllowList?: Array<FeatureType>;
    /**
     * Restrict Snippyly features to specific user plans.
     *
     * Default: All users.
     */
    userPlanAllowList?: string[];
    /**
     * Restrict Snippyly features to specific users.
     *
     * Default: All users.
     */
    userIdAllowList?: string[];
    /**
     * Restrict Snippyly features to specific groups/teams of users.
     *
     * Default: All groups/teams.
     */
    userGroupIdAllowList?: string[];
    /**
     * To enable/disable debug mode
     *
     * This change will be reflected after a page refresh
     */
    debugMode?: boolean;
    /**
     * To enable/disable prefers color scheme.
     * If this is set to true, then we will listen to changes on the
     * prefers-color-scheme media query to set the global theme of our components.
     */
    usePrefersColorScheme?: boolean;
    /**
     * To enable/disable advanced queries.
     *
     * Default: false
     */
    advancedQueriesDisabled?: boolean;
    /**
     * The domain of the API proxy.
     * @deprecated Use `proxyConfig.apiHost` instead.
     */
    apiProxyDomain?: string;
    /**
     * Controls whether global Velt styles are loaded.
     * When true (default), global styles are applied.
     * When false, global styles are not loaded - useful for custom styling.
     *
     * Default: true
     */
    globalStyles?: boolean;
    /**
     * Configuration for routing all traffic through reverse proxies.
     */
    proxyConfig?: ProxyConfig;
}
export interface ProxyConfig {
    /** Custom host for the Velt CDN (e.g., 'cdn-proxy.customer.com') */
    cdnHost?: string;
    /** Custom host for the Velt API (e.g., 'api-proxy.customer.com') */
    apiHost?: string;
    /** Custom host for Firestore (e.g., 'firestore-proxy.customer.com') */
    v2DbHost?: string;
    /** Custom host for Firebase RTDB (e.g., 'rtdb-proxy.customer.com'). Replaces the firebaseio.com domain in all RTDB URLs. */
    v1DbHost?: string;
    /** Custom host for Firebase Storage (e.g., 'storage-proxy.customer.com'). Replaces firebasestorage.googleapis.com. */
    storageHost?: string;
    /** Custom host for Firebase Auth (e.g., 'auth-proxy.customer.com'). Replaces identitytoolkit.googleapis.com and securetoken.googleapis.com. */
    authHost?: string;
    /** Force long-polling for Firestore and RTDB instead of WebSocket. Default: false (WebSocket). */
    forceLongPolling?: boolean;
}
export interface ExtendedFirebaseOptions extends FirebaseOptions {
    storeDbId: string;
    region?: string;
}
export interface AdvancedQueries {
    advancedQueriesEnabled: boolean;
    advancedQueriesEnabledTime: number;
}
export interface DisableLogsConfig {
    warnings?: boolean;
    suppressAll?: boolean;
}
export interface GetProjectConfigResponse {
    isPrivateCommentsEnabled: boolean;
    activityConfig?: ActivityConfig;
}
export interface ActivityConfig {
    immutable: boolean;
    isEnabled: boolean;
}
