import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * Use this data source to query detailed information of traffic mirror sessions
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 *
 * const foo = volcengine.vpc.getTrafficMirrorSessions({
 *     trafficMirrorSessionIds: ["tms-mjpcyvp71r0g5smt1ayf****"],
 * });
 * ```
 */
export declare function getTrafficMirrorSessions(args?: GetTrafficMirrorSessionsArgs, opts?: pulumi.InvokeOptions): Promise<GetTrafficMirrorSessionsResult>;
/**
 * A collection of arguments for invoking getTrafficMirrorSessions.
 */
export interface GetTrafficMirrorSessionsArgs {
    /**
     * A Name Regex of Resource.
     */
    nameRegex?: string;
    /**
     * The ID of network interface.
     */
    networkInterfaceId?: string;
    /**
     * File name where to save data source results.
     */
    outputFile?: string;
    /**
     * The packet length of traffic mirror session.
     */
    packetLength?: number;
    /**
     * The priority of traffic mirror session.
     */
    priority?: number;
    /**
     * The project name of traffic mirror session.
     */
    projectName?: string;
    /**
     * Tags.
     */
    tags?: inputs.vpc.GetTrafficMirrorSessionsTag[];
    /**
     * The ID of traffic mirror filter.
     */
    trafficMirrorFilterId?: string;
    /**
     * A list of traffic mirror session IDs.
     */
    trafficMirrorSessionIds?: string[];
    /**
     * A list of traffic mirror session names.
     */
    trafficMirrorSessionNames?: string[];
    /**
     * The ID of traffic mirror target.
     */
    trafficMirrorTargetId?: string;
    /**
     * The ID of virtual network.
     */
    virtualNetworkId?: number;
}
/**
 * A collection of values returned by getTrafficMirrorSessions.
 */
export interface GetTrafficMirrorSessionsResult {
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly nameRegex?: string;
    readonly networkInterfaceId?: string;
    readonly outputFile?: string;
    /**
     * The packet length of traffic mirror session.
     */
    readonly packetLength?: number;
    /**
     * The priority of traffic mirror session.
     */
    readonly priority?: number;
    /**
     * The project name of traffic mirror session.
     */
    readonly projectName?: string;
    /**
     * Tags.
     */
    readonly tags?: outputs.vpc.GetTrafficMirrorSessionsTag[];
    /**
     * The total count of query.
     */
    readonly totalCount: number;
    /**
     * The ID of traffic mirror filter.
     */
    readonly trafficMirrorFilterId?: string;
    readonly trafficMirrorSessionIds?: string[];
    readonly trafficMirrorSessionNames?: string[];
    /**
     * The collection of query.
     */
    readonly trafficMirrorSessions: outputs.vpc.GetTrafficMirrorSessionsTrafficMirrorSession[];
    /**
     * The ID of traffic mirror target.
     */
    readonly trafficMirrorTargetId?: string;
    /**
     * The ID of virtual network.
     */
    readonly virtualNetworkId?: number;
}
/**
 * Use this data source to query detailed information of traffic mirror sessions
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 *
 * const foo = volcengine.vpc.getTrafficMirrorSessions({
 *     trafficMirrorSessionIds: ["tms-mjpcyvp71r0g5smt1ayf****"],
 * });
 * ```
 */
export declare function getTrafficMirrorSessionsOutput(args?: GetTrafficMirrorSessionsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetTrafficMirrorSessionsResult>;
/**
 * A collection of arguments for invoking getTrafficMirrorSessions.
 */
export interface GetTrafficMirrorSessionsOutputArgs {
    /**
     * A Name Regex of Resource.
     */
    nameRegex?: pulumi.Input<string>;
    /**
     * The ID of network interface.
     */
    networkInterfaceId?: pulumi.Input<string>;
    /**
     * File name where to save data source results.
     */
    outputFile?: pulumi.Input<string>;
    /**
     * The packet length of traffic mirror session.
     */
    packetLength?: pulumi.Input<number>;
    /**
     * The priority of traffic mirror session.
     */
    priority?: pulumi.Input<number>;
    /**
     * The project name of traffic mirror session.
     */
    projectName?: pulumi.Input<string>;
    /**
     * Tags.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.vpc.GetTrafficMirrorSessionsTagArgs>[]>;
    /**
     * The ID of traffic mirror filter.
     */
    trafficMirrorFilterId?: pulumi.Input<string>;
    /**
     * A list of traffic mirror session IDs.
     */
    trafficMirrorSessionIds?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * A list of traffic mirror session names.
     */
    trafficMirrorSessionNames?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * The ID of traffic mirror target.
     */
    trafficMirrorTargetId?: pulumi.Input<string>;
    /**
     * The ID of virtual network.
     */
    virtualNetworkId?: pulumi.Input<number>;
}
