import { MappedDataSetParameterProps } from './MappedDataSetParameterProps';
import { StringDefaultValuesProps } from './StringDefaultValuesProps';
import { Value } from '../../../cloudformation/Value';
import { StringValueWhenUnsetConfigurationProps } from './StringValueWhenUnsetConfigurationProps';
/**
  A parameter declaration for the <code>String</code> data type.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-analysis-stringparameterdeclaration.html">the AWS Docs</a>
*/
export interface StringParameterDeclarationProps {
    /** <code>MappedDataSetParameters</code>  <a name="cfn-quicksight-analysis-stringparameterdeclaration-mappeddatasetparameters"></a>
  Property description not available.<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> */
    mappedDataSetParameters?: MappedDataSetParameterProps[];
    /** <code>DefaultValues</code>  <a name="cfn-quicksight-analysis-stringparameterdeclaration-defaultvalues"></a>
  The default values of a parameter. If the parameter is a single-value parameter, a maximum of one default value can be provided.<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> */
    defaultValues?: StringDefaultValuesProps;
    /** <code>ParameterValueType</code>  <a name="cfn-quicksight-analysis-stringparameterdeclaration-parametervaluetype"></a>
  The value type determines whether the parameter is a single-value or multi-value parameter.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>MULTI_VALUED | SINGLE_VALUED</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> */
    parameterValueType: Value<'MULTI_VALUED' | 'SINGLE_VALUED'>;
    /** <code>ValueWhenUnset</code>  <a name="cfn-quicksight-analysis-stringparameterdeclaration-valuewhenunset"></a>
  The configuration that defines the default value of a <code>String</code> parameter when a value has not been set.<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> */
    valueWhenUnset?: StringValueWhenUnsetConfigurationProps;
    /** <code>Name</code>  <a name="cfn-quicksight-analysis-stringparameterdeclaration-name"></a>
  The name of the parameter that is being declared.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>2048</code><br />
  
  Pattern: <code>^[a-zA-Z0-9]+$</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>;
}
