import * as $dara from '@darabonba/typescript';
export declare class ModifySecurityGroupEgressRuleRequest extends $dara.Model {
    /**
     * @remarks
     * The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length.**** For more information, see [How to ensure idempotence](https://help.aliyun.com/document_detail/25693.html).
     *
     * @example
     * 123e4567-e89b-12d3-a456-426655440000
     */
    clientToken?: string;
    /**
     * @remarks
     * The description of the security group rule. The description must be 1 to 512 characters in length.
     *
     * @example
     * This is a new securitygroup rule.
     */
    description?: string;
    /**
     * @remarks
     * The destination IPv4 CIDR block. IPv4 CIDR blocks and IPv4 addresses are supported.
     *
     * By default, this parameter is left empty.
     *
     * @example
     * 10.0.0.0/8
     */
    destCidrIp?: string;
    /**
     * @remarks
     * The ID of the destination security group. You must specify at least one of `DestGroupId` and `DestCidrIp`.
     *
     * *   At least one of DestGroupId, DestCidrIp, Ipv6DestCidrIp, and DestPrefixListId must be specified.
     * *   If DestGroupId is specified but DestCidrIp is not specified, the NicType parameter can be set only to intranet.
     * *   If both DestGroupId and DestCidrIp are specified, DestCidrIp takes precedence.
     *
     * @example
     * sg-bp67acfmxa123b****
     */
    destGroupId?: string;
    /**
     * @remarks
     * The Alibaba Cloud account that manages the destination security group when you set security group rule N across accounts.
     *
     * @example
     * EcsforCloud@Alibaba.com
     */
    destGroupOwnerAccount?: string;
    /**
     * @remarks
     * The ID of the Alibaba Cloud account that manages the destination security group when you set security group rule N across accounts.
     *
     * @example
     * 1234567890
     */
    destGroupOwnerId?: number;
    /**
     * @remarks
     * The ID of the destination prefix list. You can call the [DescribePrefixLists](https://help.aliyun.com/document_detail/205046.html) operation to query the IDs of available prefix lists.
     *
     * If you specify `DestCidrIp`, `Ipv6DestCidrIp`, or `DestGroupId`, this parameter is ignored.
     *
     * @example
     * pl-x1j1k5ykzqlixdcy****
     */
    destPrefixListId?: string;
    /**
     * @remarks
     * Network Layer /transport layer protocol. Two types of assignments are supported:
     *
     * 1.  The case-insensitive protocol name. Valid values:
     *
     * *   ICMP
     * *   GRE
     * *   TCP
     * *   UDP
     * *   ALL: supports all protocols.
     *
     * 2.  The value of the IANA-compliant protocol number, which is an integer from 0 to 255. List of regions currently available:
     *
     * *   Philippines (Manila)
     * *   UK (London)
     * *   Malaysia (Kuala Lumpur)
     * *   China (Hohhot)
     * *   China (Qingdao)
     * *   US (Silicon Valley)
     * *   Singapore
     *
     * @example
     * tcp
     */
    ipProtocol?: string;
    /**
     * @remarks
     * The destination IPv6 CIDR block. IPv6 CIDR blocks and IPv6 addresses are supported.
     *
     * >  Only the IP addresses of instances in virtual private clouds (VPCs) are supported. You cannot specify both Ipv6DestCidrIp and `DestCidrIp`.
     *
     * By default, this parameter is left empty.
     *
     * @example
     * 2001:db8:1233:1a00::***
     */
    ipv6DestCidrIp?: string;
    /**
     * @remarks
     * The source IPv6 CIDR block. IPv6 CIDR blocks and IPv6 addresses are supported.
     *
     * >  Only the IP addresses of instances in VPCs are supported. You cannot specify both Ipv6SourceCidrIp and `SourceCidrIp`.
     *
     * By default, this parameter is left empty.
     *
     * @example
     * 2001:db8:1234:1a00::***
     */
    ipv6SourceCidrIp?: string;
    /**
     * @remarks
     * The network interface controller (NIC) type.
     *
     * >  You cannot modify this parameter when you modify a security group rule by specifying the ID of the rule. If you want to change the NIC type of a security group rule, you can create a security group rule of a desired NIC type and delete the existing rule.
     *
     * @example
     * intranet
     */
    nicType?: string;
    ownerAccount?: string;
    ownerId?: number;
    /**
     * @remarks
     * The action of the security group rule. Valid values:
     *
     * *   accept: allows access.
     * *   drop: denies access and returns no responses.
     *
     * Default value: accept.
     *
     * @example
     * accept
     */
    policy?: string;
    /**
     * @remarks
     * The range of destination ports that correspond to the transport layer protocol. Valid values:
     *
     * *   If you set IpProtocol to TCP or UDP, the port number range is 1 to 65535. Separate the start port number and the end port number with a forward slash (/). Example: 1/200.
     * *   If you set IpProtocol to ICMP, the port number range is -1/-1.
     * *   If you set IpProtocol to GRE, the port number range is -1/-1.
     * *   If you set IpProtocol to ALL, the port number range is -1/-1.
     *
     * @example
     * 80/80
     */
    portRange?: string;
    /**
     * @remarks
     * The ID of the port list. You can call the `DescribePortRangeLists` operation to query the IDs of available prefix lists.
     *
     * *   If you specify PortRange, the value of this parameter is ignored.
     * *   If the security group is of the classic network type, you cannot reference port lists in the security group rules. For information about the limits on security groups and port lists, see the [Security groups](~~25412#SecurityGroupQuota1~~) section of the "Limits and quotas" topic.
     *
     * @example
     * prl-2ze9743****
     */
    portRangeListId?: string;
    /**
     * @remarks
     * The priority of the security group rule. Valid values: 1 to 100.
     *
     * Default value: 1.
     *
     * @example
     * 1
     */
    priority?: string;
    /**
     * @remarks
     * The region ID of the security group. You can call the [DescribeRegions](https://help.aliyun.com/document_detail/25609.html) operation to query the most recent region list.
     *
     * This parameter is required.
     *
     * @example
     * cn-hangzhou
     */
    regionId?: string;
    resourceOwnerAccount?: string;
    resourceOwnerId?: number;
    /**
     * @remarks
     * The ID of the security group.
     *
     * This parameter is required.
     *
     * @example
     * sg-bp67acfmxazb4p****
     */
    securityGroupId?: string;
    /**
     * @remarks
     * The ID of the security group rule. You can call the [DescribeSecurityGroupAttribute](https://help.aliyun.com/document_detail/2679845.html) operation to query the IDs of security group rules in a security group.
     *
     * @example
     * sgr-bp67acfmxazb4q****
     */
    securityGroupRuleId?: string;
    /**
     * @remarks
     * The source IPv4 CIDR block. IPv4 CIDR blocks and IPv4 addresses are supported.
     *
     * By default, this parameter is left empty.
     *
     * @example
     * 10.0.0.0/8
     */
    sourceCidrIp?: string;
    /**
     * @remarks
     * The range of source ports that correspond to the transport layer protocol. Valid values:
     *
     * *   If you set IpProtocol to TCP or UDP, the port number range is 1 to 65535. Separate the start port number and the end port number with a forward slash (/). Example: 1/200.
     * *   If you set IpProtocol to ICMP, the port number range is -1/-1.
     * *   If you set IpProtocol to GRE, the port number range is -1/-1.
     * *   If you set IpProtocol to ALL, the port number range is -1/-1.
     *
     * @example
     * 80/80
     */
    sourcePortRange?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
