# NgrokEndpointAnnotation

- Kind: `record`
- Package: [CommunityToolkit.Aspire.Hosting.Ngrok](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok.md)
- Version: `13.4.0`
- Namespace: `Aspire.Hosting.ApplicationModel`
- Target framework: `net10.0`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/d9dc6fc02412d7398c5722840513d99965a6e98f/src/CommunityToolkit.Aspire.Hosting.Ngrok/NgrokEndpointAnnotation.cs)
- Implements: `IResourceAnnotation`, `IEquatable<NgrokEndpointAnnotation>`

Represents a ngrok endpoint annotation for an existing resource with endpoints.

## Definition

```csharp
namespace Aspire.Hosting.ApplicationModel;

public sealed record NgrokEndpointAnnotation
    : Aspire.Hosting.ApplicationModel.IResourceAnnotation,
      System.IEquatable<Aspire.Hosting.ApplicationModel.NgrokEndpointAnnotation>
{
    // ...
}
```

## Constructors

- [NgrokEndpointAnnotation(IResourceWithEndpoints)](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/constructors.md#constructor-iresourcewithendpoints) -- Represents a ngrok endpoint annotation for an existing resource with endpoints.

## Properties

- [Endpoints](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/properties.md#endpoints) : [ICollection<NgrokEndpoint>](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpoint.md) `get` -- Gets the collection of endpoints to tunnel
- [Resource](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/properties.md#resource) : `IResourceWithEndpoints` `get; init` -- The resource with endpoints to tunnel.

## Methods

- [<Clone>$](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/methods.md#clone) : [NgrokEndpointAnnotation](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation.md)
- [Deconstruct(IResourceWithEndpoints)](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/methods.md#deconstruct-iresourcewithendpoints)
- [Equals(object?)](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/methods.md#equals-object) : `bool` -- Determines whether the specified object is equal to the current object.
- [Equals(NgrokEndpointAnnotation?)](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/methods.md#equals-ngrokendpointannotation) : `bool` -- Indicates whether the current object is equal to another object of the same type.
- [GetHashCode](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/methods.md#gethashcode) : `int` -- Serves as the default hash function.
- [op_Equality(NgrokEndpointAnnotation?, NgrokEndpointAnnotation?)](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/methods.md#op-equality-ngrokendpointannotation-ngrokendpointannotation) : `bool` `static`
- [op_Inequality(NgrokEndpointAnnotation?, NgrokEndpointAnnotation?)](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/methods.md#op-inequality-ngrokendpointannotation-ngrokendpointannotation) : `bool` `static`
- [ToString](/reference/api/csharp/communitytoolkit.aspire.hosting.ngrok/ngrokendpointannotation/methods.md#tostring) : `string` -- Returns a string that represents the current object.
