import * as $dara from '@darabonba/typescript';
export declare class DescribeRouterInterfacesRequestFilter extends $dara.Model {
    /**
     * @remarks
     * The filter conditions. You can specify up to five filter conditions. The following filter conditions are supported:
     *
     * *   **RouterInterfaceId**: the ID of the router interface.
     * *   **RouterId**: the ID of the router.
     * *   **RouterType**: the router type. Valid values: **VRouter** and **VBR**.
     * *   **RouterInterfaceOwnerId**: the ID of the Alibaba Cloud account to which the router interface belongs.
     * *   **OppositeInterfaceId**: the ID of the peer router interface.
     * *   **OppositeRouterType**: the type of the peer router interface. Valid values: **VRouter** and **VBR**.
     * *   **OppositeRouterId**: the ID of the peer router.
     * *   **OppositeInterfaceOwnerId**: the ID of the Alibaba Cloud account to which the peer router interface belongs.
     * *   **Status**: the status of the router interface.
     * *   **Name**: the name of the router interface.
     *
     * >  The logical operator among multiple values in a filter condition is OR. In this case, the filter condition is met if one of the values is matched. The logical operator among filter conditions is AND. Only routers that meet all the filter conditions are queried.
     *
     * @example
     * Filter.1.Status
     */
    key?: string;
    /**
     * @remarks
     * Specifies the value in the filter condition based on the key. You can specify multiple filter values for one key. The logical operator among filter values is OR. If one filter value is matched, the filter condition is matched.
     *
     * @example
     * Filter.1.Active 1
     */
    value?: string[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeRouterInterfacesRequestTags extends $dara.Model {
    /**
     * @remarks
     * The key of the resource tag. At least one tag key must be entered, and a maximum of 20 tag keys are supported. If this value needs to be passed in, it cannot be an empty string.
     *
     * A tag key can support up to 128 characters, cannot start with \\"aliyun\\" or \\"acs:\\", and cannot contain \\"http://\\" or \\"https://\\".
     *
     * @example
     * FinanceDept
     */
    key?: string;
    /**
     * @remarks
     * The value of the resource tag. A maximum of 20 tag values can be entered. If this value needs to be passed in, an empty string can be entered.
     *
     * A maximum of 128 characters are supported, it cannot start with \\"aliyun\\" or \\"acs:\\", and it cannot contain \\"http://\\" or \\"https://\\".
     *
     * @example
     * FinanceJoshua
     */
    value?: string;
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
export declare class DescribeRouterInterfacesRequest extends $dara.Model {
    /**
     * @remarks
     * The filter information.
     */
    filter?: DescribeRouterInterfacesRequestFilter[];
    /**
     * @remarks
     * Specifies whether renewal data is included. Valid values:
     *
     * *   **true**
     * *   **false** (default)
     *
     * @example
     * false
     */
    includeReservationData?: boolean;
    ownerId?: number;
    /**
     * @remarks
     * The page number. Default value: **1**.
     *
     * @example
     * 1
     */
    pageNumber?: number;
    /**
     * @remarks
     * The number of entries per page. Maximum value: **50**. Default value: **10**.
     *
     * @example
     * 10
     */
    pageSize?: number;
    /**
     * @remarks
     * The region ID of the router interface.
     *
     * You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to query the most recent region list.
     *
     * This parameter is required.
     *
     * @example
     * cn-hangzhou
     */
    regionId?: string;
    /**
     * @remarks
     * Resource Group ID.
     *
     * For more information about resource groups, please refer to [What is a Resource Group?](https://help.aliyun.com/document_detail/94475.html)
     *
     * @example
     * rg-acfmxazb4ph6aiy****
     */
    resourceGroupId?: string;
    resourceOwnerAccount?: string;
    resourceOwnerId?: number;
    /**
     * @remarks
     * The tags of the resource.
     */
    tags?: DescribeRouterInterfacesRequestTags[];
    static names(): {
        [key: string]: string;
    };
    static types(): {
        [key: string]: any;
    };
    validate(): void;
    constructor(map?: {
        [key: string]: any;
    });
}
