import { ServerCredentialsProps } from './storagesystem/ServerCredentialsProps';
import { ServerConfigurationProps } from './storagesystem/ServerConfigurationProps';
import { Value } from '../../cloudformation/Value';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type StorageSystemAttributes = {
    ConnectivityStatus: Attribute<string>;
    StorageSystemArn: Attribute<string>;
    SecretsManagerArn: Attribute<string>;
};
export type StorageSystem = AwsResource<'AWS::DataSync::StorageSystem', StorageSystemProperties, StorageSystemAttributes>;
/**
  The <code>AWS::DataSync::StorageSystem</code> resource creates an AWS resource for an on-premises storage system that you want DataSync Discovery to collect information about. For more information, see <a href="https://docs.aws.amazon.com/datasync/latest/userguide/understanding-your-storage.html">discovering your storage with DataSync Discovery.</a>
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-storagesystem.html">the AWS Docs</a>
*/
export declare function storageSystem(storageSystemProps: StorageSystemProperties): StorageSystem;
/**
  The <code>AWS::DataSync::StorageSystem</code> resource creates an AWS resource for an on-premises storage system that you want DataSync Discovery to collect information about. For more information, see <a href="https://docs.aws.amazon.com/datasync/latest/userguide/understanding-your-storage.html">discovering your storage with DataSync Discovery.</a>
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-storagesystem.html">the AWS Docs</a>
*/
export interface StorageSystemProperties {
    /** <code>ServerCredentials</code>  <a name="cfn-datasync-storagesystem-servercredentials"></a>
  Specifies the user name and password for accessing your on-premises storage system’s management interface.<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> */
    serverCredentials?: ServerCredentialsProps;
    /** <code>ServerConfiguration</code>  <a name="cfn-datasync-storagesystem-serverconfiguration"></a>
  Specifies the server name and network port required to connect with the management interface of your on-premises storage 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-no-interrupt">No interruption</a> */
    serverConfiguration: ServerConfigurationProps;
    /** <code>CloudWatchLogGroupArn</code>  <a name="cfn-datasync-storagesystem-cloudwatchloggrouparn"></a>
  Specifies the ARN of the Amazon CloudWatch log group for monitoring and logging discovery job events.<br />
  
  Required: No<br />
  
  Maximum: <code>562</code><br />
  
  Pattern: <code>^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):logs:[a-z\-0-9]+:[0-9]{12}:log-group:([^:\*]*)(:\*)?$</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> */
    cloudWatchLogGroupArn?: Value<string>;
    /** <code>SystemType</code>  <a name="cfn-datasync-storagesystem-systemtype"></a>
  Specifies the type of on-premises storage system that you want DataSync Discovery to collect information about.<br />
  DataSync Discovery currently supports NetApp Fabric-Attached Storage (FAS) and All Flash FAS (AFF) systems running ONTAP 9.7 or later.
  
  Required: Yes<br />
  
  Allowed values: <code>NetAppONTAP</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> */
    systemType: Value<'NetAppONTAP'>;
    /** <code>AgentArns</code>  <a name="cfn-datasync-storagesystem-agentarns"></a>
  Specifies the Amazon Resource Name (ARN) of the DataSync agent that connects to and reads from your on-premises storage system’s management interface. You can only specify one ARN.<br />
  
  Required: Yes<br />
  
  Maximum: <code>1</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> */
    agentArns: Value<Value<string>[]>;
    /** <code>Tags</code>  <a name="cfn-datasync-storagesystem-tags"></a>
  Specifies labels that help you categorize, filter, and search for your AWS resources. We recommend creating at least a name tag for your on-premises storage system.<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[];
    /** <code>Name</code>  <a name="cfn-datasync-storagesystem-name"></a>
  Specifies a familiar name for your on-premises storage system.<br />
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>256</code><br />
  
  Pattern: <code>^[\p{L}\p{M}\p{N}\s+=._:@\/-]+$</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>;
}
