import { Value } from '../../cloudformation/Value';
import { RowFilterProps } from './datacellsfilter/RowFilterProps';
import { ColumnWildcardProps } from './datacellsfilter/ColumnWildcardProps';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
/**
  A structure that represents a data cell filter with column-level, row-level, and/or cell-level security. Data cell filters belong to a specific table in a Data Catalog. During a stack operation, AWS CloudFormation calls the AWS Lake Formation <code>CreateDataCellsFilter</code> API operation to create a <code>DataCellsFilter</code> resource, and calls the <code>DeleteDataCellsFilter</code> API operation to delete it.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datacellsfilter.html">the AWS Docs</a>
*/
export type DataCellsFilter = AwsResource<'AWS::LakeFormation::DataCellsFilter', DataCellsFilterProperties>;
export declare function dataCellsFilter(dataCellsFilterProps: DataCellsFilterProperties): DataCellsFilter;
/**
  A structure that represents a data cell filter with column-level, row-level, and/or cell-level security. Data cell filters belong to a specific table in a Data Catalog. During a stack operation, AWS CloudFormation calls the AWS Lake Formation <code>CreateDataCellsFilter</code> API operation to create a <code>DataCellsFilter</code> resource, and calls the <code>DeleteDataCellsFilter</code> API operation to delete it.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datacellsfilter.html">the AWS Docs</a>
*/
export interface DataCellsFilterProperties {
    /** <code>TableName</code>  <a name="cfn-lakeformation-datacellsfilter-tablename"></a>
  UTF-8 string, not less than 1 or more than 255 bytes long, matching the <a href="https://docs.aws.amazon.com/lake-formation/latest/dg/aws-lake-formation-api-aws-lake-formation-api-common.html">single-line string pattern</a>.<br />
  A table in the database.<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> */
    tableName: Value<string>;
    /** <code>ColumnNames</code>  <a name="cfn-lakeformation-datacellsfilter-columnnames"></a>
  An array of UTF-8 strings. A list of column names.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    columnNames?: Value<Value<string>[]>;
    /** <code>RowFilter</code>  <a name="cfn-lakeformation-datacellsfilter-rowfilter"></a>
  A PartiQL predicate.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    rowFilter?: RowFilterProps;
    /** <code>DatabaseName</code>  <a name="cfn-lakeformation-datacellsfilter-databasename"></a>
  UTF-8 string, not less than 1 or more than 255 bytes long, matching the <a href="https://docs.aws.amazon.com/lake-formation/latest/dg/aws-lake-formation-api-aws-lake-formation-api-common.html">single-line string pattern</a>.<br />
  A database in the Data Catalog.<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> */
    databaseName: Value<string>;
    /** <code>TableCatalogId</code>  <a name="cfn-lakeformation-datacellsfilter-tablecatalogid"></a>
  Catalog id string, not less than 1 or more than 255 bytes long, matching the <a href="https://docs.aws.amazon.com/lake-formation/latest/dg/aws-lake-formation-api-aws-lake-formation-api-common.html">single-line string pattern</a>.<br />
  The ID of the catalog to which the table belongs.<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> */
    tableCatalogId: Value<string>;
    /** <code>Name</code>  <a name="cfn-lakeformation-datacellsfilter-name"></a>
  UTF-8 string, not less than 1 or more than 255 bytes long, matching the <a href="https://docs.aws.amazon.com/lake-formation/latest/dg/aws-lake-formation-api-aws-lake-formation-api-common.html">single-line string pattern</a>.<br />
  The name given by the user to the data filter cell.<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> */
    name: Value<string>;
    /** <code>ColumnWildcard</code>  <a name="cfn-lakeformation-datacellsfilter-columnwildcard"></a>
  A wildcard with exclusions. You must specify either a <code>ColumnNames</code> list or the <code>ColumnWildCard</code>.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    columnWildcard?: ColumnWildcardProps;
}
