import { DnsEntryProps } from './service/DnsEntryProps';
import { Value } from '../../cloudformation/Value';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type ServiceAttributes = {
    Status: Attribute<string>;
    LastUpdatedAt: Attribute<string>;
    CreatedAt: Attribute<string>;
    DnsEntry_HostedZoneId: Attribute<string>;
    Id: Attribute<string>;
    Arn: Attribute<string>;
    DnsEntry_DomainName: Attribute<string>;
};
export type Service = AwsResource<'AWS::VpcLattice::Service', ServiceProperties, ServiceAttributes>;
/**
  Creates a service. A service is any software application that can run on instances containers, or serverless functions within an account or virtual private cloud (VPC).
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html">the AWS Docs</a>
*/
export declare function service(serviceProps?: ServiceProperties): Service;
/**
  Creates a service. A service is any software application that can run on instances containers, or serverless functions within an account or virtual private cloud (VPC).
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html">the AWS Docs</a>
*/
export interface ServiceProperties {
    /** <code>DnsEntry</code>  <a name="cfn-vpclattice-service-dnsentry"></a>
  The DNS information of the service.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    dnsEntry?: DnsEntryProps;
    /** <code>CustomDomainName</code>  <a name="cfn-vpclattice-service-customdomainname"></a>
  The custom domain name of the service.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    customDomainName?: Value<string>;
    /** <p> */
    authType?: Value<string>;
    /** <code>Tags</code>  <a name="cfn-vpclattice-service-tags"></a>
  The tags for the service.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    tags?: Tag[];
    /** <code>Name</code>  <a name="cfn-vpclattice-service-name"></a>
  The name of the service. The name must be unique within the account. The valid characters are a-z, 0-9, and hyphens (-). You can’t use a hyphen as the first or last character, or immediately after another hyphen.<br />
  If you don’t specify a name, CloudFormation generates one. However, if you specify a name, and later want to replace the resource, you must specify a new name.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    name?: Value<string>;
    /** <code>CertificateArn</code>  <a name="cfn-vpclattice-service-certificatearn"></a>
  The Amazon Resource Name (ARN) of the certificate.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    certificateArn?: Value<string>;
}
