import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface BrowserControlPolicyConfig extends cdktf.TerraformMetaArguments { /** * A Boolean value that specifies whether or not to allow all the browsers and their respective versions access to the internet * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#allow_all_browsers BrowserControlPolicy#allow_all_browsers} */ readonly allowAllBrowsers?: boolean | cdktf.IResolvable; /** * Versions of Google Chrome browser that need to be blocked. If not set, all Google Chrome versions are allowed. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#blocked_chrome_versions BrowserControlPolicy#blocked_chrome_versions} */ readonly blockedChromeVersions?: string[]; /** * Versions of Mozilla Firefox browser that need to be blocked. If not set, all Mozilla Firefox versions are allowed. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#blocked_firefox_versions BrowserControlPolicy#blocked_firefox_versions} */ readonly blockedFirefoxVersions?: string[]; /** * Versions of Microsoft browser that need to be blocked. If not set, all Microsoft browser versions are allowed. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#blocked_internet_explorer_versions BrowserControlPolicy#blocked_internet_explorer_versions} */ readonly blockedInternetExplorerVersions?: string[]; /** * Versions of Opera browser that need to be blocked. If not set, all Opera versions are allowed * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#blocked_opera_versions BrowserControlPolicy#blocked_opera_versions} */ readonly blockedOperaVersions?: string[]; /** * Versions of Apple Safari browser that need to be blocked. If not set, all Apple Safari versions are allowed * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#blocked_safari_versions BrowserControlPolicy#blocked_safari_versions} */ readonly blockedSafariVersions?: string[]; /** * If set to true, all the browsers are bypassed for warnings * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#bypass_all_browsers BrowserControlPolicy#bypass_all_browsers} */ readonly bypassAllBrowsers?: boolean | cdktf.IResolvable; /** * List of applications that need to be bypassed for warnings. This attribute has effect only if the 'enableWarnings' attribute is set to true. If not set, all vulnerable applications are warned * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#bypass_applications BrowserControlPolicy#bypass_applications} */ readonly bypassApplications?: string[]; /** * List of plugins that need to be bypassed for warnings. This attribute has effect only if the 'enableWarnings' attribute is set to true. If not set, all vulnerable plugins are warned * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#bypass_plugins BrowserControlPolicy#bypass_plugins} */ readonly bypassPlugins?: string[]; /** * A Boolean value that specifies if Smart Browser Isolation is enabled * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#enable_smart_browser_isolation BrowserControlPolicy#enable_smart_browser_isolation} */ readonly enableSmartBrowserIsolation?: boolean | cdktf.IResolvable; /** * A Boolean value that specifies if the warnings are enabled * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#enable_warnings BrowserControlPolicy#enable_warnings} */ readonly enableWarnings?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#id BrowserControlPolicy#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; /** * Specifies how frequently the service checks browsers and relevant applications to warn users regarding outdated or vulnerable browsers, plugins, and applications. If not set, the warnings are disabled * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#plugin_check_frequency BrowserControlPolicy#plugin_check_frequency} */ readonly pluginCheckFrequency?: string; /** * smart_isolation_groups block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#smart_isolation_groups BrowserControlPolicy#smart_isolation_groups} */ readonly smartIsolationGroups?: BrowserControlPolicySmartIsolationGroups; /** * smart_isolation_profile block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#smart_isolation_profile BrowserControlPolicy#smart_isolation_profile} */ readonly smartIsolationProfile?: BrowserControlPolicySmartIsolationProfile[] | cdktf.IResolvable; /** * smart_isolation_users block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#smart_isolation_users BrowserControlPolicy#smart_isolation_users} */ readonly smartIsolationUsers?: BrowserControlPolicySmartIsolationUsers; } export interface BrowserControlPolicySmartIsolationGroups { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#id BrowserControlPolicy#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?: number[]; } export declare function browserControlPolicySmartIsolationGroupsToTerraform(struct?: BrowserControlPolicySmartIsolationGroupsOutputReference | BrowserControlPolicySmartIsolationGroups): any; export declare function browserControlPolicySmartIsolationGroupsToHclTerraform(struct?: BrowserControlPolicySmartIsolationGroupsOutputReference | BrowserControlPolicySmartIsolationGroups): any; export declare class BrowserControlPolicySmartIsolationGroupsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @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(): BrowserControlPolicySmartIsolationGroups | undefined; set internalValue(value: BrowserControlPolicySmartIsolationGroups | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } export interface BrowserControlPolicySmartIsolationProfile { /** * The universally unique identifier (UUID) for the browser isolation profile * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#id BrowserControlPolicy#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; } export declare function browserControlPolicySmartIsolationProfileToTerraform(struct?: BrowserControlPolicySmartIsolationProfile | cdktf.IResolvable): any; export declare function browserControlPolicySmartIsolationProfileToHclTerraform(struct?: BrowserControlPolicySmartIsolationProfile | cdktf.IResolvable): any; export declare class BrowserControlPolicySmartIsolationProfileOutputReference 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(): BrowserControlPolicySmartIsolationProfile | cdktf.IResolvable | undefined; set internalValue(value: BrowserControlPolicySmartIsolationProfile | cdktf.IResolvable | undefined); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; } export declare class BrowserControlPolicySmartIsolationProfileList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: BrowserControlPolicySmartIsolationProfile[] | 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): BrowserControlPolicySmartIsolationProfileOutputReference; } export interface BrowserControlPolicySmartIsolationUsers { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#id BrowserControlPolicy#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?: number[]; } export declare function browserControlPolicySmartIsolationUsersToTerraform(struct?: BrowserControlPolicySmartIsolationUsersOutputReference | BrowserControlPolicySmartIsolationUsers): any; export declare function browserControlPolicySmartIsolationUsersToHclTerraform(struct?: BrowserControlPolicySmartIsolationUsersOutputReference | BrowserControlPolicySmartIsolationUsers): any; export declare class BrowserControlPolicySmartIsolationUsersOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @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(): BrowserControlPolicySmartIsolationUsers | undefined; set internalValue(value: BrowserControlPolicySmartIsolationUsers | undefined); private _id?; get id(): number[]; set id(value: number[]); resetId(): void; get idInput(): number[]; } /** * Represents a {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy zia_browser_control_policy} */ export declare class BrowserControlPolicy extends cdktf.TerraformResource { static readonly tfResourceType = "zia_browser_control_policy"; /** * Generates CDKTF code for importing a BrowserControlPolicy 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 BrowserControlPolicy to import * @param importFromId The id of the existing BrowserControlPolicy that should be imported. Refer to the {@link https://registry.terraform.io/providers/zscaler/zia/4.6.5/docs/resources/browser_control_policy#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the BrowserControlPolicy 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/zscaler/zia/4.6.5/docs/resources/browser_control_policy zia_browser_control_policy} 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 BrowserControlPolicyConfig = {} */ constructor(scope: Construct, id: string, config?: BrowserControlPolicyConfig); private _allowAllBrowsers?; get allowAllBrowsers(): boolean | cdktf.IResolvable; set allowAllBrowsers(value: boolean | cdktf.IResolvable); resetAllowAllBrowsers(): void; get allowAllBrowsersInput(): any; private _blockedChromeVersions?; get blockedChromeVersions(): string[]; set blockedChromeVersions(value: string[]); resetBlockedChromeVersions(): void; get blockedChromeVersionsInput(): string[]; private _blockedFirefoxVersions?; get blockedFirefoxVersions(): string[]; set blockedFirefoxVersions(value: string[]); resetBlockedFirefoxVersions(): void; get blockedFirefoxVersionsInput(): string[]; private _blockedInternetExplorerVersions?; get blockedInternetExplorerVersions(): string[]; set blockedInternetExplorerVersions(value: string[]); resetBlockedInternetExplorerVersions(): void; get blockedInternetExplorerVersionsInput(): string[]; private _blockedOperaVersions?; get blockedOperaVersions(): string[]; set blockedOperaVersions(value: string[]); resetBlockedOperaVersions(): void; get blockedOperaVersionsInput(): string[]; private _blockedSafariVersions?; get blockedSafariVersions(): string[]; set blockedSafariVersions(value: string[]); resetBlockedSafariVersions(): void; get blockedSafariVersionsInput(): string[]; private _bypassAllBrowsers?; get bypassAllBrowsers(): boolean | cdktf.IResolvable; set bypassAllBrowsers(value: boolean | cdktf.IResolvable); resetBypassAllBrowsers(): void; get bypassAllBrowsersInput(): any; private _bypassApplications?; get bypassApplications(): string[]; set bypassApplications(value: string[]); resetBypassApplications(): void; get bypassApplicationsInput(): string[]; private _bypassPlugins?; get bypassPlugins(): string[]; set bypassPlugins(value: string[]); resetBypassPlugins(): void; get bypassPluginsInput(): string[]; private _enableSmartBrowserIsolation?; get enableSmartBrowserIsolation(): boolean | cdktf.IResolvable; set enableSmartBrowserIsolation(value: boolean | cdktf.IResolvable); resetEnableSmartBrowserIsolation(): void; get enableSmartBrowserIsolationInput(): any; private _enableWarnings?; get enableWarnings(): boolean | cdktf.IResolvable; set enableWarnings(value: boolean | cdktf.IResolvable); resetEnableWarnings(): void; get enableWarningsInput(): any; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _pluginCheckFrequency?; get pluginCheckFrequency(): string; set pluginCheckFrequency(value: string); resetPluginCheckFrequency(): void; get pluginCheckFrequencyInput(): string; private _smartIsolationGroups; get smartIsolationGroups(): BrowserControlPolicySmartIsolationGroupsOutputReference; putSmartIsolationGroups(value: BrowserControlPolicySmartIsolationGroups): void; resetSmartIsolationGroups(): void; get smartIsolationGroupsInput(): BrowserControlPolicySmartIsolationGroups; private _smartIsolationProfile; get smartIsolationProfile(): BrowserControlPolicySmartIsolationProfileList; putSmartIsolationProfile(value: BrowserControlPolicySmartIsolationProfile[] | cdktf.IResolvable): void; resetSmartIsolationProfile(): void; get smartIsolationProfileInput(): any; private _smartIsolationUsers; get smartIsolationUsers(): BrowserControlPolicySmartIsolationUsersOutputReference; putSmartIsolationUsers(value: BrowserControlPolicySmartIsolationUsers): void; resetSmartIsolationUsers(): void; get smartIsolationUsersInput(): BrowserControlPolicySmartIsolationUsers; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }