import { Value } from '../../cloudformation/Value';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type AcceleratorAttributes = {
    Ipv4Addresses: Attribute<string[]>;
    DnsName: Attribute<string>;
    DualStackDnsName: Attribute<string>;
    AcceleratorArn: Attribute<string>;
    Ipv6Addresses: Attribute<string[]>;
};
export type Accelerator = AwsResource<'AWS::GlobalAccelerator::Accelerator', AcceleratorProperties, AcceleratorAttributes>;
/**
  The <code>AWS::GlobalAccelerator::Accelerator</code> resource is a Global Accelerator resource type that contains information about how you create an accelerator. An accelerator includes one or more listeners that process inbound connections and direct traffic to one or more endpoint groups, each of which includes endpoints, such as Application Load Balancers, Network Load Balancers, and Amazon EC2 instances.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html">the AWS Docs</a>
*/
export declare function accelerator(acceleratorProps: AcceleratorProperties): Accelerator;
/**
  The <code>AWS::GlobalAccelerator::Accelerator</code> resource is a Global Accelerator resource type that contains information about how you create an accelerator. An accelerator includes one or more listeners that process inbound connections and direct traffic to one or more endpoint groups, each of which includes endpoints, such as Application Load Balancers, Network Load Balancers, and Amazon EC2 instances.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html">the AWS Docs</a>
*/
export interface AcceleratorProperties {
    /** <code>IpAddressType</code>  <a name="cfn-globalaccelerator-accelerator-ipaddresstype"></a>
  The IP address type that an accelerator supports. For a standard accelerator, the value can be IPV4 or DUAL_STACK.<br />
  
  Required: No<br />
  
  Allowed values: <code>DUAL_STACK | IPV4</code><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> */
    ipAddressType?: Value<'DUAL_STACK' | 'IPV4'>;
    /** <code>IpAddresses</code>  <a name="cfn-globalaccelerator-accelerator-ipaddresses"></a>
  Optionally, if you’ve added your own IP address pool to Global Accelerator (BYOIP), you can choose IP addresses from your own pool to use for the accelerator’s static IP addresses when you create an accelerator. You can specify one or two addresses, separated by a comma. Do not include the /32 suffix.<br />
  Only one IP address from each of your IP address ranges can be used for each accelerator. If you specify only one IP address from your IP address range, Global Accelerator assigns a second static IP address for the accelerator from the AWS IP address pool.<br />
  Note that you can’t update IP addresses for an existing accelerator. To change them, you must create a new accelerator with the new addresses.<br />
  For more information, see <a href="https://docs.aws.amazon.com/global-accelerator/latest/dg/using-byoip.html">Bring Your Own IP Addresses (BYOIP)</a> in the
  AWS Global Accelerator Developer Guide: 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> */
    ipAddresses?: Value<Value<string>[]>;
    /** <code>Enabled</code>  <a name="cfn-globalaccelerator-accelerator-enabled"></a>
  Indicates whether the accelerator is enabled. The value is true or false. The default value is true.<br />
  If the value is set to true, the accelerator cannot be deleted. If set to false, accelerator can be deleted.<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> */
    enabled?: Value<boolean>;
    /** <code>Tags</code>  <a name="cfn-globalaccelerator-accelerator-tags"></a>
  Create tags for an accelerator.<br />
  For more information, see <a href="https://docs.aws.amazon.com/global-accelerator/latest/dg/tagging-in-global-accelerator.html">Tagging </a> in the
  AWS Global Accelerator Developer Guide: 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-globalaccelerator-accelerator-name"></a>
  The name of the accelerator. The name must contain only alphanumeric characters or hyphens (-), and must not begin or end with a hyphen.<br />
  
  Required: Yes<br />
  
  Maximum: <code>64</code><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> */
    name: Value<string>;
}
