# VirtualRouterListener

Represents the properties needed to define listeners for a VirtualRouter.

- Source: [`aws-appmesh/lib/virtual-router-listener.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0/packages/aws-cdk-lib/aws-appmesh/lib/virtual-router-listener.ts#L18)

## Example

```ts
declare const mesh: appmesh.Mesh;
const router = mesh.addVirtualRouter('router', {
  listeners: [appmesh.VirtualRouterListener.http(8080)],
});
```

## Initializer

```ts
new VirtualRouterListener()
```

## Methods

- `bind(scope: Construct): VirtualRouterListenerConfig` — Called when the VirtualRouterListener type is initialized.

  Can be used to enforce
  mutual exclusivity

- `grpc(port?: number): VirtualRouterListener // chainable` (static) — Returns a GRPC Listener for a VirtualRouter.

  **Parameters**

  - `port` — the optional port of the listener, 8080 by default.

- `http(port?: number): VirtualRouterListener // chainable` (static) — Returns an HTTP Listener for a VirtualRouter.

  **Parameters**

  - `port` — the optional port of the listener, 8080 by default.

- `http2(port?: number): VirtualRouterListener // chainable` (static) — Returns an HTTP2 Listener for a VirtualRouter.

  **Parameters**

  - `port` — the optional port of the listener, 8080 by default.

- `tcp(port?: number): VirtualRouterListener // chainable` (static) — Returns a TCP Listener for a VirtualRouter.

  **Parameters**

  - `port` — the optional port of the listener, 8080 by default.
