import { Value } from '../../../cloudformation/Value';
import { ListControlDisplayOptionsProps } from './ListControlDisplayOptionsProps';
import { CascadingControlConfigurationProps } from './CascadingControlConfigurationProps';
import { ParameterSelectableValuesProps } from './ParameterSelectableValuesProps';
/**
  A control to display a list with buttons or boxes that are used to select either a single value or multiple values.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dashboard-parameterlistcontrol.html">the AWS Docs</a>
*/
export interface ParameterListControlProps {
    /** <code>ParameterControlId</code>  <a name="cfn-quicksight-dashboard-parameterlistcontrol-parametercontrolid"></a>
  The ID of the <code>ParameterListControl</code>.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>512</code><br />
  
  Pattern: <code>[\w\-]+</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> */
    parameterControlId: Value<string>;
    /** <code>Type</code>  <a name="cfn-quicksight-dashboard-parameterlistcontrol-type"></a>
  The type of <code>ParameterListControl</code>.<br />
  
  Required: No<br />
  
  Allowed values: <code>MULTI_SELECT | SINGLE_SELECT</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> */
    type?: Value<'MULTI_SELECT' | 'SINGLE_SELECT'>;
    /** <code>DisplayOptions</code>  <a name="cfn-quicksight-dashboard-parameterlistcontrol-displayoptions"></a>
  The display options of a control.<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> */
    displayOptions?: ListControlDisplayOptionsProps;
    /** <code>SourceParameterName</code>  <a name="cfn-quicksight-dashboard-parameterlistcontrol-sourceparametername"></a>
  The source parameter name of the <code>ParameterListControl</code>.<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> */
    sourceParameterName: Value<string>;
    /** <code>CascadingControlConfiguration</code>  <a name="cfn-quicksight-dashboard-parameterlistcontrol-cascadingcontrolconfiguration"></a>
  The values that are displayed in a control can be configured to only show values that are valid based on what’s selected in other controls.<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> */
    cascadingControlConfiguration?: CascadingControlConfigurationProps;
    /** <code>Title</code>  <a name="cfn-quicksight-dashboard-parameterlistcontrol-title"></a>
  The title of the <code>ParameterListControl</code>.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>2048</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> */
    title: Value<string>;
    /** <code>SelectableValues</code>  <a name="cfn-quicksight-dashboard-parameterlistcontrol-selectablevalues"></a>
  A list of selectable values that are used in a control.<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> */
    selectableValues?: ParameterSelectableValuesProps;
}
