import { FrameDeliverySettings } from '@vertexvis/stream-api'; import { AdaptiveRenderingSettings, QualityOfServiceSettings } from '@vertexvis/stream-api'; import { DeepPartial } from '@vertexvis/utils'; import { Environment } from './environment'; import { Animation, Events, Flags, Interactions } from './types'; interface NetworkConfig { apiHost: string; renderingHost: string; sceneTreeHost: string; sceneViewHost: string; } export interface Config { network: NetworkConfig; flags: Flags.Flags; events: Events.EventConfig; animation: Animation.AnimationConfig; interactions: Interactions.InteractionConfig; EXPERIMENTAL_frameDelivery: Omit; EXPERIMENTAL_adaptiveRendering: Omit; EXPERIMENTAL_qualityOfService: QualityOfServiceSettings; EXPERIMENTAL_annotationPollingIntervalInMs: number | undefined; } export declare type PartialConfig = DeepPartial; export declare type ConfigProvider = () => Config; export declare type InteractionConfigProvider = () => Interactions.InteractionConfig; export declare function parseAndValidateConfig(environment?: Environment, config?: string | PartialConfig): Config; export declare function parseConfig(environment?: Environment, config?: string | PartialConfig): Config; export declare function sanitizeConfig(config: Config): Config; export declare function validateConfig(config: Config): Config; export {};