import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * Description of topic resource.
 *
 * Uses Azure REST API version 2024-01-01. In version 2.x of the Azure Native provider, it used API version 2022-10-01-preview.
 *
 * Other available API versions: 2018-01-01-preview, 2021-01-01-preview, 2021-06-01-preview, 2021-11-01, 2022-01-01-preview, 2022-10-01-preview, 2023-01-01-preview, 2024-05-01-preview, 2025-05-01-preview. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native eventhub [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
 */
export declare class NamespaceNetworkRuleSet extends pulumi.CustomResource {
    /**
     * Get an existing NamespaceNetworkRuleSet resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): NamespaceNetworkRuleSet;
    /**
     * Returns true if the given object is an instance of NamespaceNetworkRuleSet.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is NamespaceNetworkRuleSet;
    /**
     * The Azure API version of the resource.
     */
    readonly azureApiVersion: pulumi.Output<string>;
    /**
     * Default Action for Network Rule Set
     */
    readonly defaultAction: pulumi.Output<string | undefined>;
    /**
     * List of IpRules
     */
    readonly ipRules: pulumi.Output<outputs.eventhub.NWRuleSetIpRulesResponse[] | undefined>;
    /**
     * The geo-location where the resource lives
     */
    readonly location: pulumi.Output<string>;
    /**
     * The name of the resource
     */
    readonly name: pulumi.Output<string>;
    /**
     * This determines if traffic is allowed over public network. By default it is enabled. If value is SecuredByPerimeter then Inbound and Outbound communication is controlled by the network security perimeter and profile's access rules.
     */
    readonly publicNetworkAccess: pulumi.Output<string | undefined>;
    /**
     * The system meta data relating to this resource.
     */
    readonly systemData: pulumi.Output<outputs.eventhub.SystemDataResponse>;
    /**
     * Value that indicates whether Trusted Service Access is Enabled or not.
     */
    readonly trustedServiceAccessEnabled: pulumi.Output<boolean | undefined>;
    /**
     * The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or "Microsoft.EventHub/Namespaces/EventHubs"
     */
    readonly type: pulumi.Output<string>;
    /**
     * List VirtualNetwork Rules
     */
    readonly virtualNetworkRules: pulumi.Output<outputs.eventhub.NWRuleSetVirtualNetworkRulesResponse[] | undefined>;
    /**
     * Create a NamespaceNetworkRuleSet resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: NamespaceNetworkRuleSetArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a NamespaceNetworkRuleSet resource.
 */
export interface NamespaceNetworkRuleSetArgs {
    /**
     * Default Action for Network Rule Set
     */
    defaultAction?: pulumi.Input<string | enums.eventhub.DefaultAction>;
    /**
     * List of IpRules
     */
    ipRules?: pulumi.Input<pulumi.Input<inputs.eventhub.NWRuleSetIpRulesArgs>[]>;
    /**
     * The Namespace name
     */
    namespaceName: pulumi.Input<string>;
    /**
     * This determines if traffic is allowed over public network. By default it is enabled. If value is SecuredByPerimeter then Inbound and Outbound communication is controlled by the network security perimeter and profile's access rules.
     */
    publicNetworkAccess?: pulumi.Input<string | enums.eventhub.PublicNetworkAccessFlag>;
    /**
     * Name of the resource group within the azure subscription.
     */
    resourceGroupName: pulumi.Input<string>;
    /**
     * Value that indicates whether Trusted Service Access is Enabled or not.
     */
    trustedServiceAccessEnabled?: pulumi.Input<boolean>;
    /**
     * List VirtualNetwork Rules
     */
    virtualNetworkRules?: pulumi.Input<pulumi.Input<inputs.eventhub.NWRuleSetVirtualNetworkRulesArgs>[]>;
}
