import GirafeSingleton from '../base/GirafeSingleton.js'; import LayerWms from '../models/layers/layerwms.js'; import ServerOgc from '../models/serverogc.js'; import IGirafeContext from './context/icontext.js'; export default abstract class VendorSpecificOgcServerManager extends GirafeSingleton { protected readonly _clientClasses: Map OgcServerClient>; protected readonly _clients: Map; abstract getClientId(ogcServer: ServerOgc): string; createClient(clientClass: new (os: ServerOgc, opt: OgcClientOptions, context: IGirafeContext) => OgcServerClient, ogcServer: ServerOgc): OgcServerClient; registerClientClass(type: string, clientClass: new (ogcServer: ServerOgc, opt: OgcClientOptions, context: IGirafeContext) => OgcServerClient): void; getClient(ogcServer: ServerOgc): OgcServerClient; getClient(layerWms: LayerWms): OgcServerClient; }