import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface TrinoAccessControlConfig extends cdktf.TerraformMetaArguments { /** * Catalog session property access control rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#catalog_session_properties TrinoAccessControl#catalog_session_properties} */ readonly catalogSessionProperties?: TrinoAccessControlCatalogSessionProperties[] | cdktf.IResolvable; /** * Catalog level access control rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#catalogs TrinoAccessControl#catalogs} */ readonly catalogs?: TrinoAccessControlCatalogs[] | cdktf.IResolvable; /** * ID of the Trino cluster. Provided by the client when the Access Control is created. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#cluster_id TrinoAccessControl#cluster_id} */ readonly clusterId: string; /** * Function level access control rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#functions TrinoAccessControl#functions} */ readonly functions?: TrinoAccessControlFunctions[] | cdktf.IResolvable; /** * Procedure level access control rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#procedures TrinoAccessControl#procedures} */ readonly procedures?: TrinoAccessControlProcedures[] | cdktf.IResolvable; /** * Query level access control rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#queries TrinoAccessControl#queries} */ readonly queries?: TrinoAccessControlQueries[] | cdktf.IResolvable; /** * Schema level access control rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#schemas TrinoAccessControl#schemas} */ readonly schemas?: TrinoAccessControlSchemas[] | cdktf.IResolvable; /** * System session property access control rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#system_session_properties TrinoAccessControl#system_session_properties} */ readonly systemSessionProperties?: TrinoAccessControlSystemSessionProperties[] | cdktf.IResolvable; /** * Table level access control rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#tables TrinoAccessControl#tables} */ readonly tables?: TrinoAccessControlTables[] | cdktf.IResolvable; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#timeouts TrinoAccessControl#timeouts} */ readonly timeouts?: TrinoAccessControlTimeouts; } export interface TrinoAccessControlCatalogSessionPropertiesCatalog { /** * Catalog IDs rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#ids TrinoAccessControl#ids} */ readonly ids?: string[]; /** * Catalog name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; } export declare function trinoAccessControlCatalogSessionPropertiesCatalogToTerraform(struct?: TrinoAccessControlCatalogSessionPropertiesCatalog | cdktf.IResolvable): any; export declare function trinoAccessControlCatalogSessionPropertiesCatalogToHclTerraform(struct?: TrinoAccessControlCatalogSessionPropertiesCatalog | cdktf.IResolvable): any; export declare class TrinoAccessControlCatalogSessionPropertiesCatalogOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlCatalogSessionPropertiesCatalog | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlCatalogSessionPropertiesCatalog | cdktf.IResolvable | undefined); private _ids?; get ids(): string[]; set ids(value: string[]); resetIds(): void; get idsInput(): string[]; private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; } export interface TrinoAccessControlCatalogSessionPropertiesProperty { /** * Property name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; /** * Property names rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#names TrinoAccessControl#names} */ readonly names?: string[]; } export declare function trinoAccessControlCatalogSessionPropertiesPropertyToTerraform(struct?: TrinoAccessControlCatalogSessionPropertiesProperty | cdktf.IResolvable): any; export declare function trinoAccessControlCatalogSessionPropertiesPropertyToHclTerraform(struct?: TrinoAccessControlCatalogSessionPropertiesProperty | cdktf.IResolvable): any; export declare class TrinoAccessControlCatalogSessionPropertiesPropertyOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlCatalogSessionPropertiesProperty | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlCatalogSessionPropertiesProperty | cdktf.IResolvable | undefined); private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; private _names?; get names(): string[]; set names(value: string[]); resetNames(): void; get namesInput(): string[]; } export interface TrinoAccessControlCatalogSessionProperties { /** * Whether the rule allows setting the property. Valid values: `NO`, `YES` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#allow TrinoAccessControl#allow} */ readonly allow: string; /** * Catalog matcher specifying what catalogs the rule is applied to. Exactly one of `name_regexp`, `ids` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#catalog TrinoAccessControl#catalog} */ readonly catalog?: TrinoAccessControlCatalogSessionPropertiesCatalog; /** * Rule description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#description TrinoAccessControl#description} */ readonly description?: string; /** * IAM group IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#groups TrinoAccessControl#groups} */ readonly groups?: string[]; /** * Matcher specifying what properties the rule is applied to. Exactly one of `name_regexp`, `names` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#property TrinoAccessControl#property} */ readonly property?: TrinoAccessControlCatalogSessionPropertiesProperty; /** * IAM user IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#users TrinoAccessControl#users} */ readonly users?: string[]; } export declare function trinoAccessControlCatalogSessionPropertiesToTerraform(struct?: TrinoAccessControlCatalogSessionProperties | cdktf.IResolvable): any; export declare function trinoAccessControlCatalogSessionPropertiesToHclTerraform(struct?: TrinoAccessControlCatalogSessionProperties | cdktf.IResolvable): any; export declare class TrinoAccessControlCatalogSessionPropertiesOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): TrinoAccessControlCatalogSessionProperties | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlCatalogSessionProperties | cdktf.IResolvable | undefined); private _allow?; get allow(): string; set allow(value: string); get allowInput(): string; private _catalog; get catalog(): TrinoAccessControlCatalogSessionPropertiesCatalogOutputReference; putCatalog(value: TrinoAccessControlCatalogSessionPropertiesCatalog): void; resetCatalog(): void; get catalogInput(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _groups?; get groups(): string[]; set groups(value: string[]); resetGroups(): void; get groupsInput(): string[]; private _property; get property(): TrinoAccessControlCatalogSessionPropertiesPropertyOutputReference; putProperty(value: TrinoAccessControlCatalogSessionPropertiesProperty): void; resetProperty(): void; get propertyInput(): any; private _users?; get users(): string[]; set users(value: string[]); resetUsers(): void; get usersInput(): string[]; } export declare class TrinoAccessControlCatalogSessionPropertiesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TrinoAccessControlCatalogSessionProperties[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): TrinoAccessControlCatalogSessionPropertiesOutputReference; } export interface TrinoAccessControlCatalogsCatalog { /** * Catalog IDs rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#ids TrinoAccessControl#ids} */ readonly ids?: string[]; /** * Catalog name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; } export declare function trinoAccessControlCatalogsCatalogToTerraform(struct?: TrinoAccessControlCatalogsCatalog | cdktf.IResolvable): any; export declare function trinoAccessControlCatalogsCatalogToHclTerraform(struct?: TrinoAccessControlCatalogsCatalog | cdktf.IResolvable): any; export declare class TrinoAccessControlCatalogsCatalogOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlCatalogsCatalog | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlCatalogsCatalog | cdktf.IResolvable | undefined); private _ids?; get ids(): string[]; set ids(value: string[]); resetIds(): void; get idsInput(): string[]; private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; } export interface TrinoAccessControlCatalogs { /** * Catalog matcher specifying what catalogs the rule is applied to. Exactly one of `name_regexp`, `ids` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#catalog TrinoAccessControl#catalog} */ readonly catalog?: TrinoAccessControlCatalogsCatalog; /** * Rule description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#description TrinoAccessControl#description} */ readonly description?: string; /** * IAM group IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#groups TrinoAccessControl#groups} */ readonly groups?: string[]; /** * Permission granted by the rule. Valid values: `NONE`, `READ_ONLY`, `ALL` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#permission TrinoAccessControl#permission} */ readonly permission: string; /** * IAM user IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#users TrinoAccessControl#users} */ readonly users?: string[]; } export declare function trinoAccessControlCatalogsToTerraform(struct?: TrinoAccessControlCatalogs | cdktf.IResolvable): any; export declare function trinoAccessControlCatalogsToHclTerraform(struct?: TrinoAccessControlCatalogs | cdktf.IResolvable): any; export declare class TrinoAccessControlCatalogsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): TrinoAccessControlCatalogs | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlCatalogs | cdktf.IResolvable | undefined); private _catalog; get catalog(): TrinoAccessControlCatalogsCatalogOutputReference; putCatalog(value: TrinoAccessControlCatalogsCatalog): void; resetCatalog(): void; get catalogInput(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _groups?; get groups(): string[]; set groups(value: string[]); resetGroups(): void; get groupsInput(): string[]; private _permission?; get permission(): string; set permission(value: string); get permissionInput(): string; private _users?; get users(): string[]; set users(value: string[]); resetUsers(): void; get usersInput(): string[]; } export declare class TrinoAccessControlCatalogsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TrinoAccessControlCatalogs[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): TrinoAccessControlCatalogsOutputReference; } export interface TrinoAccessControlFunctionsCatalog { /** * Catalog IDs rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#ids TrinoAccessControl#ids} */ readonly ids?: string[]; /** * Catalog name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; } export declare function trinoAccessControlFunctionsCatalogToTerraform(struct?: TrinoAccessControlFunctionsCatalog | cdktf.IResolvable): any; export declare function trinoAccessControlFunctionsCatalogToHclTerraform(struct?: TrinoAccessControlFunctionsCatalog | cdktf.IResolvable): any; export declare class TrinoAccessControlFunctionsCatalogOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlFunctionsCatalog | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlFunctionsCatalog | cdktf.IResolvable | undefined); private _ids?; get ids(): string[]; set ids(value: string[]); resetIds(): void; get idsInput(): string[]; private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; } export interface TrinoAccessControlFunctionsFunction { /** * Function name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; /** * Function names rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#names TrinoAccessControl#names} */ readonly names?: string[]; } export declare function trinoAccessControlFunctionsFunctionToTerraform(struct?: TrinoAccessControlFunctionsFunction | cdktf.IResolvable): any; export declare function trinoAccessControlFunctionsFunctionToHclTerraform(struct?: TrinoAccessControlFunctionsFunction | cdktf.IResolvable): any; export declare class TrinoAccessControlFunctionsFunctionOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlFunctionsFunction | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlFunctionsFunction | cdktf.IResolvable | undefined); private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; private _names?; get names(): string[]; set names(value: string[]); resetNames(): void; get namesInput(): string[]; } export interface TrinoAccessControlFunctionsSchema { /** * Schema name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; /** * Schema names rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#names TrinoAccessControl#names} */ readonly names?: string[]; } export declare function trinoAccessControlFunctionsSchemaToTerraform(struct?: TrinoAccessControlFunctionsSchema | cdktf.IResolvable): any; export declare function trinoAccessControlFunctionsSchemaToHclTerraform(struct?: TrinoAccessControlFunctionsSchema | cdktf.IResolvable): any; export declare class TrinoAccessControlFunctionsSchemaOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlFunctionsSchema | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlFunctionsSchema | cdktf.IResolvable | undefined); private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; private _names?; get names(): string[]; set names(value: string[]); resetNames(): void; get namesInput(): string[]; } export interface TrinoAccessControlFunctions { /** * Catalog matcher specifying what catalogs the rule is applied to. Exactly one of `name_regexp`, `ids` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#catalog TrinoAccessControl#catalog} */ readonly catalog?: TrinoAccessControlFunctionsCatalog; /** * Rule description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#description TrinoAccessControl#description} */ readonly description?: string; /** * Matcher specifying what functions the rule is applied to. Exactly one of `name_regexp`, `names` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#function TrinoAccessControl#function} */ readonly function?: TrinoAccessControlFunctionsFunction; /** * IAM group IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#groups TrinoAccessControl#groups} */ readonly groups?: string[]; /** * Privileges granted by the rule. Valid values: `EXECUTE`, `GRANT_EXECUTE`, `OWNERSHIP`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#privileges TrinoAccessControl#privileges} */ readonly privileges?: string[]; /** * Matcher specifying what Schemas the rule is applied to. Exactly one of `name_regexp`, `names` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#schema TrinoAccessControl#schema} */ readonly schema?: TrinoAccessControlFunctionsSchema; /** * IAM user IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#users TrinoAccessControl#users} */ readonly users?: string[]; } export declare function trinoAccessControlFunctionsToTerraform(struct?: TrinoAccessControlFunctions | cdktf.IResolvable): any; export declare function trinoAccessControlFunctionsToHclTerraform(struct?: TrinoAccessControlFunctions | cdktf.IResolvable): any; export declare class TrinoAccessControlFunctionsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): TrinoAccessControlFunctions | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlFunctions | cdktf.IResolvable | undefined); private _catalog; get catalog(): TrinoAccessControlFunctionsCatalogOutputReference; putCatalog(value: TrinoAccessControlFunctionsCatalog): void; resetCatalog(): void; get catalogInput(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _function; get function(): TrinoAccessControlFunctionsFunctionOutputReference; putFunction(value: TrinoAccessControlFunctionsFunction): void; resetFunction(): void; get functionInput(): any; private _groups?; get groups(): string[]; set groups(value: string[]); resetGroups(): void; get groupsInput(): string[]; private _privileges?; get privileges(): string[]; set privileges(value: string[]); resetPrivileges(): void; get privilegesInput(): string[]; private _schema; get schema(): TrinoAccessControlFunctionsSchemaOutputReference; putSchema(value: TrinoAccessControlFunctionsSchema): void; resetSchema(): void; get schemaInput(): any; private _users?; get users(): string[]; set users(value: string[]); resetUsers(): void; get usersInput(): string[]; } export declare class TrinoAccessControlFunctionsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TrinoAccessControlFunctions[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): TrinoAccessControlFunctionsOutputReference; } export interface TrinoAccessControlProceduresCatalog { /** * Catalog IDs rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#ids TrinoAccessControl#ids} */ readonly ids?: string[]; /** * Catalog name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; } export declare function trinoAccessControlProceduresCatalogToTerraform(struct?: TrinoAccessControlProceduresCatalog | cdktf.IResolvable): any; export declare function trinoAccessControlProceduresCatalogToHclTerraform(struct?: TrinoAccessControlProceduresCatalog | cdktf.IResolvable): any; export declare class TrinoAccessControlProceduresCatalogOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlProceduresCatalog | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlProceduresCatalog | cdktf.IResolvable | undefined); private _ids?; get ids(): string[]; set ids(value: string[]); resetIds(): void; get idsInput(): string[]; private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; } export interface TrinoAccessControlProceduresProcedure { /** * Procedure name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; /** * Procedure names rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#names TrinoAccessControl#names} */ readonly names?: string[]; } export declare function trinoAccessControlProceduresProcedureToTerraform(struct?: TrinoAccessControlProceduresProcedure | cdktf.IResolvable): any; export declare function trinoAccessControlProceduresProcedureToHclTerraform(struct?: TrinoAccessControlProceduresProcedure | cdktf.IResolvable): any; export declare class TrinoAccessControlProceduresProcedureOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlProceduresProcedure | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlProceduresProcedure | cdktf.IResolvable | undefined); private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; private _names?; get names(): string[]; set names(value: string[]); resetNames(): void; get namesInput(): string[]; } export interface TrinoAccessControlProceduresSchema { /** * Schema name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; /** * Schema names rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#names TrinoAccessControl#names} */ readonly names?: string[]; } export declare function trinoAccessControlProceduresSchemaToTerraform(struct?: TrinoAccessControlProceduresSchema | cdktf.IResolvable): any; export declare function trinoAccessControlProceduresSchemaToHclTerraform(struct?: TrinoAccessControlProceduresSchema | cdktf.IResolvable): any; export declare class TrinoAccessControlProceduresSchemaOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlProceduresSchema | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlProceduresSchema | cdktf.IResolvable | undefined); private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; private _names?; get names(): string[]; set names(value: string[]); resetNames(): void; get namesInput(): string[]; } export interface TrinoAccessControlProcedures { /** * Catalog matcher specifying what catalogs the rule is applied to. Exactly one of `name_regexp`, `ids` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#catalog TrinoAccessControl#catalog} */ readonly catalog?: TrinoAccessControlProceduresCatalog; /** * Rule description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#description TrinoAccessControl#description} */ readonly description?: string; /** * IAM group IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#groups TrinoAccessControl#groups} */ readonly groups?: string[]; /** * Privileges granted by the rule. Valid values: `EXECUTE`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#privileges TrinoAccessControl#privileges} */ readonly privileges?: string[]; /** * Matcher specifying what procedures the rule is applied to. Exactly one of `name_regexp`, `names` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#procedure TrinoAccessControl#procedure} */ readonly procedure?: TrinoAccessControlProceduresProcedure; /** * Matcher specifying what Schemas the rule is applied to. Exactly one of `name_regexp`, `names` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#schema TrinoAccessControl#schema} */ readonly schema?: TrinoAccessControlProceduresSchema; /** * IAM user IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#users TrinoAccessControl#users} */ readonly users?: string[]; } export declare function trinoAccessControlProceduresToTerraform(struct?: TrinoAccessControlProcedures | cdktf.IResolvable): any; export declare function trinoAccessControlProceduresToHclTerraform(struct?: TrinoAccessControlProcedures | cdktf.IResolvable): any; export declare class TrinoAccessControlProceduresOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): TrinoAccessControlProcedures | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlProcedures | cdktf.IResolvable | undefined); private _catalog; get catalog(): TrinoAccessControlProceduresCatalogOutputReference; putCatalog(value: TrinoAccessControlProceduresCatalog): void; resetCatalog(): void; get catalogInput(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _groups?; get groups(): string[]; set groups(value: string[]); resetGroups(): void; get groupsInput(): string[]; private _privileges?; get privileges(): string[]; set privileges(value: string[]); resetPrivileges(): void; get privilegesInput(): string[]; private _procedure; get procedure(): TrinoAccessControlProceduresProcedureOutputReference; putProcedure(value: TrinoAccessControlProceduresProcedure): void; resetProcedure(): void; get procedureInput(): any; private _schema; get schema(): TrinoAccessControlProceduresSchemaOutputReference; putSchema(value: TrinoAccessControlProceduresSchema): void; resetSchema(): void; get schemaInput(): any; private _users?; get users(): string[]; set users(value: string[]); resetUsers(): void; get usersInput(): string[]; } export declare class TrinoAccessControlProceduresList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TrinoAccessControlProcedures[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): TrinoAccessControlProceduresOutputReference; } export interface TrinoAccessControlQueries { /** * Rule description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#description TrinoAccessControl#description} */ readonly description?: string; /** * IAM group IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#groups TrinoAccessControl#groups} */ readonly groups?: string[]; /** * Privileges granted by the rule. Valid values: `VIEW`, `EXECUTE`, `KILL`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#privileges TrinoAccessControl#privileges} */ readonly privileges?: string[]; /** * Owners of queries the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#query_owners TrinoAccessControl#query_owners} */ readonly queryOwners?: string[]; /** * IAM user IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#users TrinoAccessControl#users} */ readonly users?: string[]; } export declare function trinoAccessControlQueriesToTerraform(struct?: TrinoAccessControlQueries | cdktf.IResolvable): any; export declare function trinoAccessControlQueriesToHclTerraform(struct?: TrinoAccessControlQueries | cdktf.IResolvable): any; export declare class TrinoAccessControlQueriesOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): TrinoAccessControlQueries | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlQueries | cdktf.IResolvable | undefined); private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _groups?; get groups(): string[]; set groups(value: string[]); resetGroups(): void; get groupsInput(): string[]; private _privileges?; get privileges(): string[]; set privileges(value: string[]); resetPrivileges(): void; get privilegesInput(): string[]; private _queryOwners?; get queryOwners(): string[]; set queryOwners(value: string[]); resetQueryOwners(): void; get queryOwnersInput(): string[]; private _users?; get users(): string[]; set users(value: string[]); resetUsers(): void; get usersInput(): string[]; } export declare class TrinoAccessControlQueriesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TrinoAccessControlQueries[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): TrinoAccessControlQueriesOutputReference; } export interface TrinoAccessControlSchemasCatalog { /** * Catalog IDs rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#ids TrinoAccessControl#ids} */ readonly ids?: string[]; /** * Catalog name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; } export declare function trinoAccessControlSchemasCatalogToTerraform(struct?: TrinoAccessControlSchemasCatalog | cdktf.IResolvable): any; export declare function trinoAccessControlSchemasCatalogToHclTerraform(struct?: TrinoAccessControlSchemasCatalog | cdktf.IResolvable): any; export declare class TrinoAccessControlSchemasCatalogOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlSchemasCatalog | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlSchemasCatalog | cdktf.IResolvable | undefined); private _ids?; get ids(): string[]; set ids(value: string[]); resetIds(): void; get idsInput(): string[]; private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; } export interface TrinoAccessControlSchemasSchema { /** * Schema name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; /** * Schema names rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#names TrinoAccessControl#names} */ readonly names?: string[]; } export declare function trinoAccessControlSchemasSchemaToTerraform(struct?: TrinoAccessControlSchemasSchema | cdktf.IResolvable): any; export declare function trinoAccessControlSchemasSchemaToHclTerraform(struct?: TrinoAccessControlSchemasSchema | cdktf.IResolvable): any; export declare class TrinoAccessControlSchemasSchemaOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlSchemasSchema | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlSchemasSchema | cdktf.IResolvable | undefined); private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; private _names?; get names(): string[]; set names(value: string[]); resetNames(): void; get namesInput(): string[]; } export interface TrinoAccessControlSchemas { /** * Catalog matcher specifying what catalogs the rule is applied to. Exactly one of `name_regexp`, `ids` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#catalog TrinoAccessControl#catalog} */ readonly catalog?: TrinoAccessControlSchemasCatalog; /** * Rule description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#description TrinoAccessControl#description} */ readonly description?: string; /** * IAM group IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#groups TrinoAccessControl#groups} */ readonly groups?: string[]; /** * Ownership granted by the rule. Valid values: `NO`, `YES` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#owner TrinoAccessControl#owner} */ readonly owner: string; /** * Matcher specifying what schemas the rule is applied to. Exactly one of `name_regexp`, `names` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#schema TrinoAccessControl#schema} */ readonly schema?: TrinoAccessControlSchemasSchema; /** * IAM user IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#users TrinoAccessControl#users} */ readonly users?: string[]; } export declare function trinoAccessControlSchemasToTerraform(struct?: TrinoAccessControlSchemas | cdktf.IResolvable): any; export declare function trinoAccessControlSchemasToHclTerraform(struct?: TrinoAccessControlSchemas | cdktf.IResolvable): any; export declare class TrinoAccessControlSchemasOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): TrinoAccessControlSchemas | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlSchemas | cdktf.IResolvable | undefined); private _catalog; get catalog(): TrinoAccessControlSchemasCatalogOutputReference; putCatalog(value: TrinoAccessControlSchemasCatalog): void; resetCatalog(): void; get catalogInput(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _groups?; get groups(): string[]; set groups(value: string[]); resetGroups(): void; get groupsInput(): string[]; private _owner?; get owner(): string; set owner(value: string); get ownerInput(): string; private _schema; get schema(): TrinoAccessControlSchemasSchemaOutputReference; putSchema(value: TrinoAccessControlSchemasSchema): void; resetSchema(): void; get schemaInput(): any; private _users?; get users(): string[]; set users(value: string[]); resetUsers(): void; get usersInput(): string[]; } export declare class TrinoAccessControlSchemasList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TrinoAccessControlSchemas[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): TrinoAccessControlSchemasOutputReference; } export interface TrinoAccessControlSystemSessionPropertiesProperty { /** * Property name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; /** * Property names rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#names TrinoAccessControl#names} */ readonly names?: string[]; } export declare function trinoAccessControlSystemSessionPropertiesPropertyToTerraform(struct?: TrinoAccessControlSystemSessionPropertiesProperty | cdktf.IResolvable): any; export declare function trinoAccessControlSystemSessionPropertiesPropertyToHclTerraform(struct?: TrinoAccessControlSystemSessionPropertiesProperty | cdktf.IResolvable): any; export declare class TrinoAccessControlSystemSessionPropertiesPropertyOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlSystemSessionPropertiesProperty | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlSystemSessionPropertiesProperty | cdktf.IResolvable | undefined); private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; private _names?; get names(): string[]; set names(value: string[]); resetNames(): void; get namesInput(): string[]; } export interface TrinoAccessControlSystemSessionProperties { /** * Whether the rule allows setting the property. Valid values: `NO`, `YES` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#allow TrinoAccessControl#allow} */ readonly allow: string; /** * Rule description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#description TrinoAccessControl#description} */ readonly description?: string; /** * IAM group IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#groups TrinoAccessControl#groups} */ readonly groups?: string[]; /** * Matcher specifying what properties the rule is applied to. Exactly one of `name_regexp`, `names` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#property TrinoAccessControl#property} */ readonly property?: TrinoAccessControlSystemSessionPropertiesProperty; /** * IAM user IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#users TrinoAccessControl#users} */ readonly users?: string[]; } export declare function trinoAccessControlSystemSessionPropertiesToTerraform(struct?: TrinoAccessControlSystemSessionProperties | cdktf.IResolvable): any; export declare function trinoAccessControlSystemSessionPropertiesToHclTerraform(struct?: TrinoAccessControlSystemSessionProperties | cdktf.IResolvable): any; export declare class TrinoAccessControlSystemSessionPropertiesOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): TrinoAccessControlSystemSessionProperties | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlSystemSessionProperties | cdktf.IResolvable | undefined); private _allow?; get allow(): string; set allow(value: string); get allowInput(): string; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _groups?; get groups(): string[]; set groups(value: string[]); resetGroups(): void; get groupsInput(): string[]; private _property; get property(): TrinoAccessControlSystemSessionPropertiesPropertyOutputReference; putProperty(value: TrinoAccessControlSystemSessionPropertiesProperty): void; resetProperty(): void; get propertyInput(): any; private _users?; get users(): string[]; set users(value: string[]); resetUsers(): void; get usersInput(): string[]; } export declare class TrinoAccessControlSystemSessionPropertiesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TrinoAccessControlSystemSessionProperties[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): TrinoAccessControlSystemSessionPropertiesOutputReference; } export interface TrinoAccessControlTablesCatalog { /** * Catalog IDs rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#ids TrinoAccessControl#ids} */ readonly ids?: string[]; /** * Catalog name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; } export declare function trinoAccessControlTablesCatalogToTerraform(struct?: TrinoAccessControlTablesCatalog | cdktf.IResolvable): any; export declare function trinoAccessControlTablesCatalogToHclTerraform(struct?: TrinoAccessControlTablesCatalog | cdktf.IResolvable): any; export declare class TrinoAccessControlTablesCatalogOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlTablesCatalog | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlTablesCatalog | cdktf.IResolvable | undefined); private _ids?; get ids(): string[]; set ids(value: string[]); resetIds(): void; get idsInput(): string[]; private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; } export interface TrinoAccessControlTablesColumns { /** * Column access mode. Valid values: `NONE`, `ALL` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#access TrinoAccessControl#access} */ readonly access: string; /** * SQL expression mask to evaluate instead of original column values. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#mask TrinoAccessControl#mask} */ readonly mask?: string; /** * Column name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name TrinoAccessControl#name} */ readonly name: string; } export declare function trinoAccessControlTablesColumnsToTerraform(struct?: TrinoAccessControlTablesColumns | cdktf.IResolvable): any; export declare function trinoAccessControlTablesColumnsToHclTerraform(struct?: TrinoAccessControlTablesColumns | cdktf.IResolvable): any; export declare class TrinoAccessControlTablesColumnsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): TrinoAccessControlTablesColumns | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlTablesColumns | cdktf.IResolvable | undefined); private _access?; get access(): string; set access(value: string); get accessInput(): string; private _mask?; get mask(): string; set mask(value: string); resetMask(): void; get maskInput(): string; private _name?; get name(): string; set name(value: string); get nameInput(): string; } export declare class TrinoAccessControlTablesColumnsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TrinoAccessControlTablesColumns[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): TrinoAccessControlTablesColumnsOutputReference; } export interface TrinoAccessControlTablesSchema { /** * Schema name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; /** * Schema names rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#names TrinoAccessControl#names} */ readonly names?: string[]; } export declare function trinoAccessControlTablesSchemaToTerraform(struct?: TrinoAccessControlTablesSchema | cdktf.IResolvable): any; export declare function trinoAccessControlTablesSchemaToHclTerraform(struct?: TrinoAccessControlTablesSchema | cdktf.IResolvable): any; export declare class TrinoAccessControlTablesSchemaOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlTablesSchema | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlTablesSchema | cdktf.IResolvable | undefined); private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; private _names?; get names(): string[]; set names(value: string[]); resetNames(): void; get namesInput(): string[]; } export interface TrinoAccessControlTablesTable { /** * Table name regexp the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#name_regexp TrinoAccessControl#name_regexp} */ readonly nameRegexp?: string; /** * Table names rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#names TrinoAccessControl#names} */ readonly names?: string[]; } export declare function trinoAccessControlTablesTableToTerraform(struct?: TrinoAccessControlTablesTable | cdktf.IResolvable): any; export declare function trinoAccessControlTablesTableToHclTerraform(struct?: TrinoAccessControlTablesTable | cdktf.IResolvable): any; export declare class TrinoAccessControlTablesTableOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlTablesTable | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlTablesTable | cdktf.IResolvable | undefined); private _nameRegexp?; get nameRegexp(): string; set nameRegexp(value: string); resetNameRegexp(): void; get nameRegexpInput(): string; private _names?; get names(): string[]; set names(value: string[]); resetNames(): void; get namesInput(): string[]; } export interface TrinoAccessControlTables { /** * Catalog matcher specifying what catalogs the rule is applied to. Exactly one of `name_regexp`, `ids` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#catalog TrinoAccessControl#catalog} */ readonly catalog?: TrinoAccessControlTablesCatalog; /** * Column rules. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#columns TrinoAccessControl#columns} */ readonly columns?: TrinoAccessControlTablesColumns[] | cdktf.IResolvable; /** * Rule description. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#description TrinoAccessControl#description} */ readonly description?: string; /** * Boolean SQL expression to filter table rows for particular user. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#filter TrinoAccessControl#filter} */ readonly filter?: string; /** * IAM group IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#groups TrinoAccessControl#groups} */ readonly groups?: string[]; /** * Privileges granted by the rule. Valid values: `SELECT`, `INSERT`, `DELETE`, `UPDATE`, `OWNERSHIP`, `GRANT_SELECT`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#privileges TrinoAccessControl#privileges} */ readonly privileges?: string[]; /** * Matcher specifying what Schemas the rule is applied to. Exactly one of `name_regexp`, `names` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#schema TrinoAccessControl#schema} */ readonly schema?: TrinoAccessControlTablesSchema; /** * Matcher specifying what tables the rule is applied to. Exactly one of `name_regexp`, `names` attributes should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#table TrinoAccessControl#table} */ readonly table?: TrinoAccessControlTablesTable; /** * IAM user IDs the rule is applied to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#users TrinoAccessControl#users} */ readonly users?: string[]; } export declare function trinoAccessControlTablesToTerraform(struct?: TrinoAccessControlTables | cdktf.IResolvable): any; export declare function trinoAccessControlTablesToHclTerraform(struct?: TrinoAccessControlTables | cdktf.IResolvable): any; export declare class TrinoAccessControlTablesOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): TrinoAccessControlTables | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlTables | cdktf.IResolvable | undefined); private _catalog; get catalog(): TrinoAccessControlTablesCatalogOutputReference; putCatalog(value: TrinoAccessControlTablesCatalog): void; resetCatalog(): void; get catalogInput(): any; private _columns; get columns(): TrinoAccessControlTablesColumnsList; putColumns(value: TrinoAccessControlTablesColumns[] | cdktf.IResolvable): void; resetColumns(): void; get columnsInput(): any; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _filter?; get filter(): string; set filter(value: string); resetFilter(): void; get filterInput(): string; private _groups?; get groups(): string[]; set groups(value: string[]); resetGroups(): void; get groupsInput(): string[]; private _privileges?; get privileges(): string[]; set privileges(value: string[]); resetPrivileges(): void; get privilegesInput(): string[]; private _schema; get schema(): TrinoAccessControlTablesSchemaOutputReference; putSchema(value: TrinoAccessControlTablesSchema): void; resetSchema(): void; get schemaInput(): any; private _table; get table(): TrinoAccessControlTablesTableOutputReference; putTable(value: TrinoAccessControlTablesTable): void; resetTable(): void; get tableInput(): any; private _users?; get users(): string[]; set users(value: string[]); resetUsers(): void; get usersInput(): string[]; } export declare class TrinoAccessControlTablesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: TrinoAccessControlTables[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): TrinoAccessControlTablesOutputReference; } export interface TrinoAccessControlTimeouts { /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#create TrinoAccessControl#create} */ readonly create?: string; /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#delete TrinoAccessControl#delete} */ readonly delete?: string; /** * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#update TrinoAccessControl#update} */ readonly update?: string; } export declare function trinoAccessControlTimeoutsToTerraform(struct?: TrinoAccessControlTimeouts | cdktf.IResolvable): any; export declare function trinoAccessControlTimeoutsToHclTerraform(struct?: TrinoAccessControlTimeouts | cdktf.IResolvable): any; export declare class TrinoAccessControlTimeoutsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): TrinoAccessControlTimeouts | cdktf.IResolvable | undefined; set internalValue(value: TrinoAccessControlTimeouts | cdktf.IResolvable | undefined); private _create?; get create(): string; set create(value: string); resetCreate(): void; get createInput(): string; private _delete?; get delete(): string; set delete(value: string); resetDelete(): void; get deleteInput(): string; private _update?; get update(): string; set update(value: string); resetUpdate(): void; get updateInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control yandex_trino_access_control} */ export declare class TrinoAccessControl extends cdktf.TerraformResource { static readonly tfResourceType = "yandex_trino_access_control"; /** * Generates CDKTF code for importing a TrinoAccessControl resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the TrinoAccessControl to import * @param importFromId The id of the existing TrinoAccessControl that should be imported. Refer to the {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the TrinoAccessControl to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/trino_access_control yandex_trino_access_control} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options TrinoAccessControlConfig */ constructor(scope: Construct, id: string, config: TrinoAccessControlConfig); private _catalogSessionProperties; get catalogSessionProperties(): TrinoAccessControlCatalogSessionPropertiesList; putCatalogSessionProperties(value: TrinoAccessControlCatalogSessionProperties[] | cdktf.IResolvable): void; resetCatalogSessionProperties(): void; get catalogSessionPropertiesInput(): any; private _catalogs; get catalogs(): TrinoAccessControlCatalogsList; putCatalogs(value: TrinoAccessControlCatalogs[] | cdktf.IResolvable): void; resetCatalogs(): void; get catalogsInput(): any; private _clusterId?; get clusterId(): string; set clusterId(value: string); get clusterIdInput(): string; private _functions; get functions(): TrinoAccessControlFunctionsList; putFunctions(value: TrinoAccessControlFunctions[] | cdktf.IResolvable): void; resetFunctions(): void; get functionsInput(): any; private _procedures; get procedures(): TrinoAccessControlProceduresList; putProcedures(value: TrinoAccessControlProcedures[] | cdktf.IResolvable): void; resetProcedures(): void; get proceduresInput(): any; private _queries; get queries(): TrinoAccessControlQueriesList; putQueries(value: TrinoAccessControlQueries[] | cdktf.IResolvable): void; resetQueries(): void; get queriesInput(): any; private _schemas; get schemas(): TrinoAccessControlSchemasList; putSchemas(value: TrinoAccessControlSchemas[] | cdktf.IResolvable): void; resetSchemas(): void; get schemasInput(): any; private _systemSessionProperties; get systemSessionProperties(): TrinoAccessControlSystemSessionPropertiesList; putSystemSessionProperties(value: TrinoAccessControlSystemSessionProperties[] | cdktf.IResolvable): void; resetSystemSessionProperties(): void; get systemSessionPropertiesInput(): any; private _tables; get tables(): TrinoAccessControlTablesList; putTables(value: TrinoAccessControlTables[] | cdktf.IResolvable): void; resetTables(): void; get tablesInput(): any; private _timeouts; get timeouts(): TrinoAccessControlTimeoutsOutputReference; putTimeouts(value: TrinoAccessControlTimeouts): void; resetTimeouts(): void; get timeoutsInput(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }