import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface DataCrowdstrikePreventionPoliciesConfig extends cdktf.TerraformMetaArguments { /** * Filter policies by the user who created them. All provided filter attributes must match for a policy to be returned (omitted attributes are ignored). Supports wildcard matching with '*' where '*' matches any sequence of characters until the end of the string or until the next literal character in the pattern is found. Multiple wildcards can be used in a single pattern. Matching is case insensitive. Cannot be used together with 'filter' or 'ids'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies#created_by DataCrowdstrikePreventionPolicies#created_by} */ readonly createdBy?: string; /** * Filter policies by description. All provided filter attributes must match for a policy to be returned (omitted attributes are ignored). Supports wildcard matching with '*' where '*' matches any sequence of characters until the end of the string or until the next literal character in the pattern is found. Multiple wildcards can be used in a single pattern. Matching is case insensitive. Cannot be used together with 'filter' or 'ids'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies#description DataCrowdstrikePreventionPolicies#description} */ readonly description?: string; /** * Filter policies by enabled status. All provided filter attributes must match for a policy to be returned (omitted attributes are ignored). Cannot be used together with 'filter' or 'ids'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies#enabled DataCrowdstrikePreventionPolicies#enabled} */ readonly enabled?: boolean | cdktf.IResolvable; /** * FQL filter to apply to the prevention policies query. When specified, only policies matching the filter will be returned. Cannot be used together with 'ids' or other filter attributes. Example: `platform_name:'Windows'` * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies#filter DataCrowdstrikePreventionPolicies#filter} */ readonly filter?: string; /** * List of prevention policy IDs to retrieve. When specified, only policies with matching IDs will be returned. Cannot be used together with 'filter' or other filter attributes. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies#ids DataCrowdstrikePreventionPolicies#ids} */ readonly ids?: string[]; /** * Filter policies by the user who last modified them. All provided filter attributes must match for a policy to be returned (omitted attributes are ignored). Supports wildcard matching with '*' where '*' matches any sequence of characters until the end of the string or until the next literal character in the pattern is found. Multiple wildcards can be used in a single pattern. Matching is case insensitive. Cannot be used together with 'filter' or 'ids'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies#modified_by DataCrowdstrikePreventionPolicies#modified_by} */ readonly modifiedBy?: string; /** * Filter policies by name. All provided filter attributes must match for a policy to be returned (omitted attributes are ignored). Supports wildcard matching with '*' where '*' matches any sequence of characters until the end of the string or until the next literal character in the pattern is found. Multiple wildcards can be used in a single pattern. Matching is case insensitive. Cannot be used together with 'filter' or 'ids'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies#name DataCrowdstrikePreventionPolicies#name} */ readonly name?: string; /** * Filter policies by platform_name (Windows, Linux, Mac). All provided filter attributes must match for a policy to be returned (omitted attributes are ignored). Cannot be used together with 'filter' or 'ids'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies#platform_name DataCrowdstrikePreventionPolicies#platform_name} */ readonly platformName?: string; /** * Sort order for the results. Valid values include field names with optional '.asc' or '.desc' suffix. Example: 'name.asc', 'precedence.desc' * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies#sort DataCrowdstrikePreventionPolicies#sort} */ readonly sort?: string; } export interface DataCrowdstrikePreventionPoliciesPolicies { } export declare function dataCrowdstrikePreventionPoliciesPoliciesToTerraform(struct?: DataCrowdstrikePreventionPoliciesPolicies): any; export declare function dataCrowdstrikePreventionPoliciesPoliciesToHclTerraform(struct?: DataCrowdstrikePreventionPoliciesPolicies): any; export declare class DataCrowdstrikePreventionPoliciesPoliciesOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @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(): DataCrowdstrikePreventionPoliciesPolicies | undefined; set internalValue(value: DataCrowdstrikePreventionPoliciesPolicies | undefined); get createdBy(): any; get createdTimestamp(): any; get description(): any; get enabled(): any; get hostGroups(): any; get id(): any; get ioaRuleGroups(): any; get modifiedBy(): any; get modifiedTimestamp(): any; get name(): any; get platformName(): any; } export declare class DataCrowdstrikePreventionPoliciesPoliciesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; /** * @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): DataCrowdstrikePreventionPoliciesPoliciesOutputReference; } /** * Represents a {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies crowdstrike_prevention_policies} */ export declare class DataCrowdstrikePreventionPolicies extends cdktf.TerraformDataSource { static readonly tfResourceType = "crowdstrike_prevention_policies"; /** * Generates CDKTF code for importing a DataCrowdstrikePreventionPolicies 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 DataCrowdstrikePreventionPolicies to import * @param importFromId The id of the existing DataCrowdstrikePreventionPolicies that should be imported. Refer to the {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the DataCrowdstrikePreventionPolicies 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/crowdstrike/crowdstrike/0.0.53/docs/data-sources/prevention_policies crowdstrike_prevention_policies} Data Source * * @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 DataCrowdstrikePreventionPoliciesConfig = {} */ constructor(scope: Construct, id: string, config?: DataCrowdstrikePreventionPoliciesConfig); private _createdBy?; get createdBy(): string; set createdBy(value: string); resetCreatedBy(): void; get createdByInput(): string; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string; private _enabled?; get enabled(): boolean | cdktf.IResolvable; set enabled(value: boolean | cdktf.IResolvable); resetEnabled(): void; get enabledInput(): any; private _filter?; get filter(): string; set filter(value: string); resetFilter(): void; get filterInput(): string; private _ids?; get ids(): string[]; set ids(value: string[]); resetIds(): void; get idsInput(): string[]; private _modifiedBy?; get modifiedBy(): string; set modifiedBy(value: string); resetModifiedBy(): void; get modifiedByInput(): string; private _name?; get name(): string; set name(value: string); resetName(): void; get nameInput(): string; private _platformName?; get platformName(): string; set platformName(value: string); resetPlatformName(): void; get platformNameInput(): string; private _policies; get policies(): DataCrowdstrikePreventionPoliciesPoliciesList; private _sort?; get sort(): string; set sort(value: string); resetSort(): void; get sortInput(): string; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }