import { SupportedIcons } from '@c8y/ngx-components/icon-selector/icons';
import { RemoteAccessConfiguration } from './remote-access.service';
export interface RemoteAccessProtocolProvider {
    readonly protocolName: string;
    readonly protocolLabel: string;
    readonly protocolDescription?: string;
    readonly protocolIcon: SupportedIcons;
    addEndpoint?(deviceId: string): Promise<RemoteAccessConfiguration>;
    removeEndpoint(deviceId: string, currentEndpointConfig: RemoteAccessConfiguration): Promise<void>;
    editEndpoint?(deviceId: string, currentEndpointConfig: RemoteAccessConfiguration): Promise<RemoteAccessConfiguration>;
    connectEndpointHref?(deviceId: string, configuration: RemoteAccessConfiguration): Promise<string | null>;
    getDefaultEndpointConfiguration?(): Promise<Partial<RemoteAccessConfiguration>>;
}
declare global {
    namespace CumulocityServiceRegistry {
        interface SpecificExtensionKeys {
            remoteAccessProtocolHook: RemoteAccessProtocolProvider;
        }
    }
}
//# sourceMappingURL=remote-access-protocol-provider.d.ts.map