import * as i0 from '@angular/core';
import { Injectable } from '@angular/core';
import { gettext, hookService } from '@c8y/ngx-components';
import * as i1 from '@c8y/ngx-components/remote-access/data';

class PassthroughRemoteAccessProtocolProviderService {
    constructor(remoteAccess) {
        this.remoteAccess = remoteAccess;
        this.protocolName = 'PASSTHROUGH';
        this.protocolLabel = gettext('Passthrough');
        this.protocolDescription = gettext('Allows to passthrough a TCP connction.');
        this.protocolIcon = 'globe';
    }
    removeEndpoint(deviceId, currentEndpointConfig) {
        return this.remoteAccess.deleteConfiguration(deviceId, currentEndpointConfig.id);
    }
    async connectEndpointHref(_deviceId, _configuration) {
        return null;
    }
    async getDefaultEndpointConfiguration() {
        return {
            hostname: '127.0.0.1',
            port: 22
        };
    }
    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PassthroughRemoteAccessProtocolProviderService, deps: [{ token: i1.RemoteAccessService }], target: i0.ɵɵFactoryTarget.Injectable }); }
    static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PassthroughRemoteAccessProtocolProviderService, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PassthroughRemoteAccessProtocolProviderService, decorators: [{
            type: Injectable,
            args: [{ providedIn: 'root' }]
        }], ctorParameters: () => [{ type: i1.RemoteAccessService }] });
const remoteAccessPassthroughProviders = [
    hookService('remoteAccessProtocolHook', PassthroughRemoteAccessProtocolProviderService)
];

/**
 * Generated bundle index. Do not edit.
 */

export { PassthroughRemoteAccessProtocolProviderService, remoteAccessPassthroughProviders };
//# sourceMappingURL=c8y-ngx-components-remote-access-passthrough.mjs.map
