import { Value } from '../../cloudformation/Value';
import { ProtocolProps } from './locationfsxopenzfs/ProtocolProps';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type LocationFSxOpenZFSAttributes = {
    LocationUri: Attribute<string>;
    LocationArn: Attribute<string>;
};
export type LocationFSxOpenZFS = AwsResource<'AWS::DataSync::LocationFSxOpenZFS', LocationFSxOpenZFSProperties, LocationFSxOpenZFSAttributes>;
/**
  The <code>AWS::DataSync::LocationFSxOpenZFS</code> resource specifies an endpoint for an Amazon FSx for OpenZFS file system.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html">the AWS Docs</a>
*/
export declare function locationFSxOpenZFS(locationFSxOpenZFSProps: LocationFSxOpenZFSProperties): LocationFSxOpenZFS;
/**
  The <code>AWS::DataSync::LocationFSxOpenZFS</code> resource specifies an endpoint for an Amazon FSx for OpenZFS file system.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html">the AWS Docs</a>
*/
export interface LocationFSxOpenZFSProperties {
    /** <code>Subdirectory</code>  <a name="cfn-datasync-locationfsxopenzfs-subdirectory"></a>
  A subdirectory in the location’s path that must begin with <code>/fsx</code>. DataSync uses this subdirectory to read or write data (depending on whether the file system is a source or destination location).<br />
  
  Required: No<br />
  
  Maximum: <code>4096</code><br />
  
  Pattern: <code>^[^\u0000\u0085\u2028\u2029\r\n]{1,4096}$</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    subdirectory?: Value<string>;
    /** <code>FsxFilesystemArn</code>  <a name="cfn-datasync-locationfsxopenzfs-fsxfilesystemarn"></a>
  The Amazon Resource Name (ARN) of the FSx for OpenZFS file system.<br />
  
  Required: No<br />
  
  Maximum: <code>128</code><br />
  
  Pattern: <code>^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):fsx:[a-z\-0-9]*:[0-9]{12}:file-system/fs-.*$</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    fsxFilesystemArn?: Value<string>;
    /** <code>Protocol</code>  <a name="cfn-datasync-locationfsxopenzfs-protocol"></a>
  The type of protocol that AWS DataSync uses to access your file system.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    protocol: ProtocolProps;
    /** <code>SecurityGroupArns</code>  <a name="cfn-datasync-locationfsxopenzfs-securitygrouparns"></a>
  The ARNs of the security groups that are used to configure the FSx for OpenZFS file system.<br />
  
  Pattern: <code>^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):ec2:[a-z\-0-9]*:[0-9]{12}:security-group/.*$</code><br />
  
  Length constraints: Maximum length of 128.<br />
  
  Required: Yes<br />
  
  Maximum: <code>5</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    securityGroupArns: Value<Value<string>[]>;
    /** <code>Tags</code>  <a name="cfn-datasync-locationfsxopenzfs-tags"></a>
  The key-value pair that represents a tag that you want to add to the resource. The value can be an empty string. This value helps you manage, filter, and search for your resources. We recommend that you create a name tag for your location.<br />
  
  Required: No<br />
  
  Maximum: <code>50</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> */
    tags?: Tag[];
}
