import * as pulumi from "@pulumi/pulumi";
/**
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as netbox from "@pulumi/netbox";
 *
 * // Get VLAN group by name
 * const example1 = netbox.ipam.getVlanGroup({
 *     name: "example1",
 * });
 * // Get VLAN group by stub
 * const example2 = netbox.ipam.getVlanGroup({
 *     slug: "example2",
 * });
 * // Get VLAN group by name and scope_type/id
 * const example3 = netbox.ipam.getVlanGroup({
 *     name: "example",
 *     scopeType: "dcim.site",
 *     scopeId: example.id,
 * });
 * ```
 */
export declare function getVlanGroup(args?: GetVlanGroupArgs, opts?: pulumi.InvokeOptions): Promise<GetVlanGroupResult>;
/**
 * A collection of arguments for invoking getVlanGroup.
 */
export interface GetVlanGroupArgs {
    /**
     * At least one of `name`, `slug` or `scopeType` must be given.
     */
    name?: string;
    /**
     * Required when `scopeType` is set.
     */
    scopeId?: number;
    /**
     * Valid values are `dcim.location`, `dcim.site`, `dcim.sitegroup`, `dcim.region`, `dcim.rack`, `virtualization.cluster` and `virtualization.clustergroup`. At least one of `name`, `slug` or `scopeType` must be given.
     */
    scopeType?: string;
    /**
     * At least one of `name`, `slug` or `scopeType` must be given.
     */
    slug?: string;
}
/**
 * A collection of values returned by getVlanGroup.
 */
export interface GetVlanGroupResult {
    readonly description: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * At least one of `name`, `slug` or `scopeType` must be given.
     */
    readonly name: string;
    /**
     * Required when `scopeType` is set.
     */
    readonly scopeId?: number;
    /**
     * Valid values are `dcim.location`, `dcim.site`, `dcim.sitegroup`, `dcim.region`, `dcim.rack`, `virtualization.cluster` and `virtualization.clustergroup`. At least one of `name`, `slug` or `scopeType` must be given.
     */
    readonly scopeType?: string;
    /**
     * At least one of `name`, `slug` or `scopeType` must be given.
     */
    readonly slug: string;
    readonly vlanCount: number;
}
/**
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as netbox from "@pulumi/netbox";
 *
 * // Get VLAN group by name
 * const example1 = netbox.ipam.getVlanGroup({
 *     name: "example1",
 * });
 * // Get VLAN group by stub
 * const example2 = netbox.ipam.getVlanGroup({
 *     slug: "example2",
 * });
 * // Get VLAN group by name and scope_type/id
 * const example3 = netbox.ipam.getVlanGroup({
 *     name: "example",
 *     scopeType: "dcim.site",
 *     scopeId: example.id,
 * });
 * ```
 */
export declare function getVlanGroupOutput(args?: GetVlanGroupOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetVlanGroupResult>;
/**
 * A collection of arguments for invoking getVlanGroup.
 */
export interface GetVlanGroupOutputArgs {
    /**
     * At least one of `name`, `slug` or `scopeType` must be given.
     */
    name?: pulumi.Input<string>;
    /**
     * Required when `scopeType` is set.
     */
    scopeId?: pulumi.Input<number>;
    /**
     * Valid values are `dcim.location`, `dcim.site`, `dcim.sitegroup`, `dcim.region`, `dcim.rack`, `virtualization.cluster` and `virtualization.clustergroup`. At least one of `name`, `slug` or `scopeType` must be given.
     */
    scopeType?: pulumi.Input<string>;
    /**
     * At least one of `name`, `slug` or `scopeType` must be given.
     */
    slug?: pulumi.Input<string>;
}
