Outlook_Addin_LLM/node_modules/@microsoft/dev-tunnels-contracts/tunnelEndpoint.d.ts

77 lines
3.1 KiB
TypeScript

import { TunnelConnectionMode } from './tunnelConnectionMode';
/**
* Base class for tunnel connection parameters.
*
* A tunnel endpoint specifies how and where hosts and clients can connect to a tunnel.
* There is a subclass for each connection mode, each having different connection
* parameters. A tunnel may have multiple endpoints for one host (or multiple hosts), and
* clients can select their preferred endpoint(s) from those depending on network
* environment or client capabilities.
*/
export interface TunnelEndpoint {
/**
* Gets or sets the ID of this endpoint.
*/
id?: string;
/**
* Gets or sets the connection mode of the endpoint.
*
* This property is required when creating or updating an endpoint. The subclass type
* is also an indication of the connection mode, but this property is necessary to
* determine the subclass type when deserializing.
*/
connectionMode: TunnelConnectionMode;
/**
* Gets or sets the ID of the host that is listening on this endpoint.
*
* This property is required when creating or updating an endpoint. If the host
* supports multiple connection modes, the host's ID is the same for all the endpoints
* it supports. However different hosts may simultaneously accept connections at
* different endpoints for the same tunnel, if enabled in tunnel options.
*/
hostId: string;
/**
* Gets or sets an array of public keys, which can be used by clients to authenticate
* the host.
*/
hostPublicKeys?: string[];
/**
* Gets or sets a string used to format URIs where a web client can connect to ports
* of the tunnel. The string includes a {@link TunnelEndpoint.portToken} that must be
* replaced with the actual port number.
*/
portUriFormat?: string;
/**
* Gets or sets the URI where a web client can connect to the default port of the
* tunnel.
*/
tunnelUri?: string;
/**
* Gets or sets a string used to format ssh command where ssh client can connect to
* shared ssh port of the tunnel. The string includes a {@link
* TunnelEndpoint.portToken} that must be replaced with the actual port number.
*/
portSshCommandFormat?: string;
/**
* Gets or sets the Ssh command where the Ssh client can connect to the default ssh
* port of the tunnel.
*/
tunnelSshCommand?: string;
/**
* Gets or sets the Ssh gateway public key which should be added to the
* authorized_keys file so that tunnel service can connect to the shared ssh server.
*/
sshGatewayPublicKey?: string;
}
/**
* Token included in {@link TunnelEndpoint.portUriFormat} and {@link
* TunnelEndpoint.portSshCommandFormat} that is to be replaced by a specified port number.
*/
export declare const portToken = "{port}";
import { getPortUri, getPortSshCommand } from './tunnelEndpointStatics';
export declare const TunnelEndpoint: {
portToken: string;
getPortUri: typeof getPortUri;
getPortSshCommand: typeof getPortSshCommand;
};
//# sourceMappingURL=tunnelEndpoint.d.ts.map