71 lines
2.3 KiB
TypeScript
71 lines
2.3 KiB
TypeScript
import type { Construct } from 'constructs';
|
|
import type { BaseNamespaceProps, INamespace } from './namespace';
|
|
import { NamespaceType } from './namespace';
|
|
import type { DnsServiceProps } from './service';
|
|
import { Service } from './service';
|
|
import type * as ec2 from '../../aws-ec2';
|
|
import { Resource } from '../../core';
|
|
import type { IPrivateDnsNamespaceRef, PrivateDnsNamespaceReference } from '../../interfaces/generated/aws-servicediscovery-interfaces.generated';
|
|
export interface PrivateDnsNamespaceProps extends BaseNamespaceProps {
|
|
/**
|
|
* The Amazon VPC that you want to associate the namespace with.
|
|
*/
|
|
readonly vpc: ec2.IVpc;
|
|
}
|
|
export interface IPrivateDnsNamespace extends INamespace, IPrivateDnsNamespaceRef {
|
|
}
|
|
export interface PrivateDnsNamespaceAttributes {
|
|
/**
|
|
* A name for the Namespace.
|
|
*/
|
|
readonly namespaceName: string;
|
|
/**
|
|
* Namespace Id for the Namespace.
|
|
*/
|
|
readonly namespaceId: string;
|
|
/**
|
|
* Namespace ARN for the Namespace.
|
|
*/
|
|
readonly namespaceArn: string;
|
|
}
|
|
/**
|
|
* Define a Service Discovery HTTP Namespace
|
|
*/
|
|
export declare class PrivateDnsNamespace extends Resource implements IPrivateDnsNamespace {
|
|
/** Uniquely identifies this class. */
|
|
static readonly PROPERTY_INJECTION_ID: string;
|
|
static fromPrivateDnsNamespaceAttributes(scope: Construct, id: string, attrs: PrivateDnsNamespaceAttributes): IPrivateDnsNamespace;
|
|
/**
|
|
* The name of the PrivateDnsNamespace.
|
|
*/
|
|
readonly namespaceName: string;
|
|
/**
|
|
* Namespace Id of the PrivateDnsNamespace.
|
|
*/
|
|
readonly namespaceId: string;
|
|
/**
|
|
* Namespace Arn of the namespace.
|
|
*/
|
|
readonly namespaceArn: string;
|
|
/**
|
|
* ID of hosted zone created by namespace
|
|
*/
|
|
readonly namespaceHostedZoneId: string;
|
|
/**
|
|
* Type of the namespace.
|
|
*/
|
|
readonly type: NamespaceType;
|
|
constructor(scope: Construct, id: string, props: PrivateDnsNamespaceProps);
|
|
/** @attribute */
|
|
get privateDnsNamespaceArn(): string;
|
|
/** @attribute */
|
|
get privateDnsNamespaceName(): string;
|
|
/** @attribute */
|
|
get privateDnsNamespaceId(): string;
|
|
get privateDnsNamespaceRef(): PrivateDnsNamespaceReference;
|
|
/**
|
|
* Creates a service within the namespace
|
|
*/
|
|
createService(id: string, props?: DnsServiceProps): Service;
|
|
}
|