import * as pulumi from "@pulumi/pulumi";
/**
 * This resource manages the Org WxRules (WxLAN policies).
 *
 * A WxLAN policy is a set of rules and settings that can be applied to devices in a network to determine how they are treated. it provides support for access policies, network segmentation, role-based policies, micro-segmentation, and least privilege.\
 * WxLAN policies are used to allow or deny specific users from accessing specific resources in a wireless network.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as junipermist from "@pulumi/juniper-mist";
 *
 * const wxruleOne = new junipermist.org.Wxrule("wxrule_one", {
 *     orgId: terraformTest.id,
 *     templateId: wlantemplateOne.id,
 *     srcWxtags: [wxtagOne.id],
 *     enabled: true,
 *     action: "allow",
 *     dstDenyWxtags: [wxtagTwo.id],
 *     order: 1,
 * });
 * ```
 *
 * ## Import
 *
 * Using `pulumi import`, import `mist_org_wxrule` with:
 *
 * Org WxRule can be imported by specifying the org_id and the wxrule_id
 *
 * ```sh
 * $ pulumi import junipermist:org/wxrule:Wxrule wxrule_one 17b46405-3a6d-4715-8bb4-6bb6d06f316a.d3c42998-9012-4859-9743-6b9bee475309
 * ```
 */
export declare class Wxrule extends pulumi.CustomResource {
    /**
     * Get an existing Wxrule 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 state Any extra arguments used during the lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, state?: WxruleState, opts?: pulumi.CustomResourceOptions): Wxrule;
    /**
     * Returns true if the given object is an instance of Wxrule.  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 Wxrule;
    /**
     * type of action, allow / block. enum: `allow`, `block`
     */
    readonly action: pulumi.Output<string>;
    readonly applyTags: pulumi.Output<string[] | undefined>;
    /**
     * Blocked apps (always blocking, ignoring action), the key of Get Application List
     */
    readonly blockedApps: pulumi.Output<string[] | undefined>;
    /**
     * List of WxTag UUID to indicate these tags are allowed access
     */
    readonly dstAllowWxtags: pulumi.Output<string[]>;
    /**
     * List of WxTag UUID to indicate these tags are blocked access
     */
    readonly dstDenyWxtags: pulumi.Output<string[]>;
    /**
     * List of WxTag UUID
     */
    readonly dstWxtags: pulumi.Output<string[]>;
    readonly enabled: pulumi.Output<boolean>;
    /**
     * Order how rules would be looked up, > 0 and bigger order got matched first, -1 means LAST, uniqueness not checked
     */
    readonly order: pulumi.Output<number>;
    readonly orgId: pulumi.Output<string>;
    /**
     * List of WxTag UUID to determine if this rule would match
     */
    readonly srcWxtags: pulumi.Output<string[]>;
    /**
     * Only for Org Level WxRule
     */
    readonly templateId: pulumi.Output<string>;
    /**
     * Create a Wxrule 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: WxruleArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering Wxrule resources.
 */
export interface WxruleState {
    /**
     * type of action, allow / block. enum: `allow`, `block`
     */
    action?: pulumi.Input<string>;
    applyTags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Blocked apps (always blocking, ignoring action), the key of Get Application List
     */
    blockedApps?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * List of WxTag UUID to indicate these tags are allowed access
     */
    dstAllowWxtags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * List of WxTag UUID to indicate these tags are blocked access
     */
    dstDenyWxtags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * List of WxTag UUID
     */
    dstWxtags?: pulumi.Input<pulumi.Input<string>[]>;
    enabled?: pulumi.Input<boolean>;
    /**
     * Order how rules would be looked up, > 0 and bigger order got matched first, -1 means LAST, uniqueness not checked
     */
    order?: pulumi.Input<number>;
    orgId?: pulumi.Input<string>;
    /**
     * List of WxTag UUID to determine if this rule would match
     */
    srcWxtags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Only for Org Level WxRule
     */
    templateId?: pulumi.Input<string>;
}
/**
 * The set of arguments for constructing a Wxrule resource.
 */
export interface WxruleArgs {
    /**
     * type of action, allow / block. enum: `allow`, `block`
     */
    action: pulumi.Input<string>;
    applyTags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Blocked apps (always blocking, ignoring action), the key of Get Application List
     */
    blockedApps?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * List of WxTag UUID to indicate these tags are allowed access
     */
    dstAllowWxtags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * List of WxTag UUID to indicate these tags are blocked access
     */
    dstDenyWxtags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * List of WxTag UUID
     */
    dstWxtags?: pulumi.Input<pulumi.Input<string>[]>;
    enabled?: pulumi.Input<boolean>;
    /**
     * Order how rules would be looked up, > 0 and bigger order got matched first, -1 means LAST, uniqueness not checked
     */
    order: pulumi.Input<number>;
    orgId: pulumi.Input<string>;
    /**
     * List of WxTag UUID to determine if this rule would match
     */
    srcWxtags?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Only for Org Level WxRule
     */
    templateId: pulumi.Input<string>;
}
