import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface PreventionPolicyAttachmentConfig extends cdktf.TerraformMetaArguments { /** * When true (default), this resource takes exclusive ownership of all host groups and ioa rule groups attached to the prevention policy. When false, this resource only manages the specific host groups and ioa rule groups defined in the configuration, leaving other groups untouched. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_attachment#exclusive PreventionPolicyAttachment#exclusive} */ readonly exclusive?: boolean | cdktf.IResolvable; /** * Host Group IDs to attach to the prevention policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_attachment#host_groups PreventionPolicyAttachment#host_groups} */ readonly hostGroups?: string[]; /** * The prevention policy id you want to attach to. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_attachment#id PreventionPolicyAttachment#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id: string; /** * IOA Rule Group IDs to attach to the prevention policy. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_attachment#ioa_rule_groups PreventionPolicyAttachment#ioa_rule_groups} */ readonly ioaRuleGroups?: string[]; } /** * Represents a {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_attachment crowdstrike_prevention_policy_attachment} */ export declare class PreventionPolicyAttachment extends cdktf.TerraformResource { static readonly tfResourceType = "crowdstrike_prevention_policy_attachment"; /** * Generates CDKTF code for importing a PreventionPolicyAttachment 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 PreventionPolicyAttachment to import * @param importFromId The id of the existing PreventionPolicyAttachment that should be imported. Refer to the {@link https://registry.terraform.io/providers/crowdstrike/crowdstrike/0.0.53/docs/resources/prevention_policy_attachment#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the PreventionPolicyAttachment 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/resources/prevention_policy_attachment crowdstrike_prevention_policy_attachment} 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 PreventionPolicyAttachmentConfig */ constructor(scope: Construct, id: string, config: PreventionPolicyAttachmentConfig); private _exclusive?; get exclusive(): boolean | cdktf.IResolvable; set exclusive(value: boolean | cdktf.IResolvable); resetExclusive(): void; get exclusiveInput(): any; private _hostGroups?; get hostGroups(): string[]; set hostGroups(value: string[]); resetHostGroups(): void; get hostGroupsInput(): string[]; private _id?; get id(): string; set id(value: string); get idInput(): string; private _ioaRuleGroups?; get ioaRuleGroups(): string[]; set ioaRuleGroups(value: string[]); resetIoaRuleGroups(): void; get ioaRuleGroupsInput(): string[]; get lastUpdated(): any; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }