import * as pulumi from "@pulumi/pulumi";
import { output as outputs } from "../types";
/**
 * Use this data source to get the details of a specific IEC security group.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as huaweicloud from "@pulumi/huaweicloud";
 *
 * const config = new pulumi.Config();
 * const sgName = config.requireObject("sgName");
 * const mySg = huaweicloud.Iec.getSecurityGroup({
 *     name: sgName,
 * });
 * ```
 */
export declare function getSecurityGroup(args: GetSecurityGroupArgs, opts?: pulumi.InvokeOptions): Promise<GetSecurityGroupResult>;
/**
 * A collection of arguments for invoking getSecurityGroup.
 */
export interface GetSecurityGroupArgs {
    /**
     * Specifies the name of the security group with a maximum of 64 characters.
     */
    name: string;
}
/**
 * A collection of values returned by getSecurityGroup.
 */
export interface GetSecurityGroupResult {
    /**
     * The description for the IEC security group rules.
     */
    readonly description: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly name: string;
    /**
     * An Array of one or more security group rules. The object is documented below.
     */
    readonly securityGroupRules: outputs.Iec.GetSecurityGroupSecurityGroupRule[];
}
export declare function getSecurityGroupOutput(args: GetSecurityGroupOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetSecurityGroupResult>;
/**
 * A collection of arguments for invoking getSecurityGroup.
 */
export interface GetSecurityGroupOutputArgs {
    /**
     * Specifies the name of the security group with a maximum of 64 characters.
     */
    name: pulumi.Input<string>;
}
