import { Value } from '../../../cloudformation/Value';
import { InputColumnProps } from './InputColumnProps';
/**
  A physical table type built from the results of the custom SQL query.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-quicksight-dataset-customsql.html">the AWS Docs</a>
*/
export interface CustomSqlProps {
    /** <code>DataSourceArn</code>  <a name="cfn-quicksight-dataset-customsql-datasourcearn"></a>
  The Amazon Resource Name (ARN) of the data source.<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> */
    dataSourceArn: Value<string>;
    /** <code>SqlQuery</code>  <a name="cfn-quicksight-dataset-customsql-sqlquery"></a>
  The SQL query.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>65536</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> */
    sqlQuery: Value<string>;
    /** <code>Columns</code>  <a name="cfn-quicksight-dataset-customsql-columns"></a>
  The column schema from the SQL query result set.<br />
  
  Required: Yes<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> */
    columns: InputColumnProps[];
    /** <code>Name</code>  <a name="cfn-quicksight-dataset-customsql-name"></a>
  A display name for the SQL query result.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><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>;
}
