import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Use this data source to query detailed information of cen service route entries
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 * import * as volcengine from "@volcengine/pulumi";
 *
 * const fooVpc: volcengine.vpc.Vpc[] = [];
 * for (const range = {value: 0}; range.value < 3; range.value++) {
 *     fooVpc.push(new volcengine.vpc.Vpc(`fooVpc-${range.value}`, {
 *         vpcName: "acc-test-vpc",
 *         cidrBlock: "172.16.0.0/16",
 *     }));
 * }
 * const fooCen = new volcengine.cen.Cen("fooCen", {
 *     cenName: "acc-test-cen",
 *     description: "acc-test",
 *     projectName: "default",
 *     tags: [{
 *         key: "k1",
 *         value: "v1",
 *     }],
 * });
 * const fooAttachInstance: volcengine.cen.AttachInstance[] = [];
 * for (const range = {value: 0}; range.value < 3; range.value++) {
 *     fooAttachInstance.push(new volcengine.cen.AttachInstance(`fooAttachInstance-${range.value}`, {
 *         cenId: fooCen.id,
 *         instanceId: fooVpc[range.value].id,
 *         instanceRegionId: "cn-beijing",
 *         instanceType: "VPC",
 *     }));
 * }
 * const fooServiceRouteEntry = new volcengine.cen.ServiceRouteEntry("fooServiceRouteEntry", {
 *     cenId: fooCen.id,
 *     destinationCidrBlock: "100.64.0.0/11",
 *     serviceRegionId: "cn-beijing",
 *     serviceVpcId: fooAttachInstance[0].instanceId,
 *     description: "acc-test",
 *     publishMode: "Custom",
 *     publishToInstances: [
 *         {
 *             instanceRegionId: "cn-beijing",
 *             instanceType: "VPC",
 *             instanceId: fooAttachInstance[1].instanceId,
 *         },
 *         {
 *             instanceRegionId: "cn-beijing",
 *             instanceType: "VPC",
 *             instanceId: fooAttachInstance[2].instanceId,
 *         },
 *     ],
 * });
 * const fooServiceRouteEntries = volcengine.cen.getServiceRouteEntriesOutput({
 *     cenId: fooCen.id,
 *     destinationCidrBlock: fooServiceRouteEntry.destinationCidrBlock,
 * });
 * ```
 */
export declare function getServiceRouteEntries(args?: GetServiceRouteEntriesArgs, opts?: pulumi.InvokeOptions): Promise<GetServiceRouteEntriesResult>;
/**
 * A collection of arguments for invoking getServiceRouteEntries.
 */
export interface GetServiceRouteEntriesArgs {
    /**
     * A cen ID.
     */
    cenId?: string;
    /**
     * A destination cidr block.
     */
    destinationCidrBlock?: string;
    /**
     * File name where to save data source results.
     */
    outputFile?: string;
    /**
     * A service region id.
     */
    serviceRegionId?: string;
    /**
     * A service VPC id.
     */
    serviceVpcId?: string;
}
/**
 * A collection of values returned by getServiceRouteEntries.
 */
export interface GetServiceRouteEntriesResult {
    /**
     * The cen ID of the cen service route entry.
     */
    readonly cenId?: string;
    /**
     * The destination cidr block of the cen service route entry.
     */
    readonly destinationCidrBlock?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly outputFile?: string;
    /**
     * The service region id of the cen service route entry.
     */
    readonly serviceRegionId?: string;
    /**
     * The collection of cen service route entry query.
     */
    readonly serviceRouteEntries: outputs.cen.GetServiceRouteEntriesServiceRouteEntry[];
    /**
     * The service VPC id of the cen service route entry.
     */
    readonly serviceVpcId?: string;
    /**
     * The total count of cen service route entry.
     */
    readonly totalCount: number;
}
/**
 * Use this data source to query detailed information of cen service route entries
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as volcengine from "@pulumi/volcengine";
 * import * as volcengine from "@volcengine/pulumi";
 *
 * const fooVpc: volcengine.vpc.Vpc[] = [];
 * for (const range = {value: 0}; range.value < 3; range.value++) {
 *     fooVpc.push(new volcengine.vpc.Vpc(`fooVpc-${range.value}`, {
 *         vpcName: "acc-test-vpc",
 *         cidrBlock: "172.16.0.0/16",
 *     }));
 * }
 * const fooCen = new volcengine.cen.Cen("fooCen", {
 *     cenName: "acc-test-cen",
 *     description: "acc-test",
 *     projectName: "default",
 *     tags: [{
 *         key: "k1",
 *         value: "v1",
 *     }],
 * });
 * const fooAttachInstance: volcengine.cen.AttachInstance[] = [];
 * for (const range = {value: 0}; range.value < 3; range.value++) {
 *     fooAttachInstance.push(new volcengine.cen.AttachInstance(`fooAttachInstance-${range.value}`, {
 *         cenId: fooCen.id,
 *         instanceId: fooVpc[range.value].id,
 *         instanceRegionId: "cn-beijing",
 *         instanceType: "VPC",
 *     }));
 * }
 * const fooServiceRouteEntry = new volcengine.cen.ServiceRouteEntry("fooServiceRouteEntry", {
 *     cenId: fooCen.id,
 *     destinationCidrBlock: "100.64.0.0/11",
 *     serviceRegionId: "cn-beijing",
 *     serviceVpcId: fooAttachInstance[0].instanceId,
 *     description: "acc-test",
 *     publishMode: "Custom",
 *     publishToInstances: [
 *         {
 *             instanceRegionId: "cn-beijing",
 *             instanceType: "VPC",
 *             instanceId: fooAttachInstance[1].instanceId,
 *         },
 *         {
 *             instanceRegionId: "cn-beijing",
 *             instanceType: "VPC",
 *             instanceId: fooAttachInstance[2].instanceId,
 *         },
 *     ],
 * });
 * const fooServiceRouteEntries = volcengine.cen.getServiceRouteEntriesOutput({
 *     cenId: fooCen.id,
 *     destinationCidrBlock: fooServiceRouteEntry.destinationCidrBlock,
 * });
 * ```
 */
export declare function getServiceRouteEntriesOutput(args?: GetServiceRouteEntriesOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetServiceRouteEntriesResult>;
/**
 * A collection of arguments for invoking getServiceRouteEntries.
 */
export interface GetServiceRouteEntriesOutputArgs {
    /**
     * A cen ID.
     */
    cenId?: pulumi.Input<string>;
    /**
     * A destination cidr block.
     */
    destinationCidrBlock?: pulumi.Input<string>;
    /**
     * File name where to save data source results.
     */
    outputFile?: pulumi.Input<string>;
    /**
     * A service region id.
     */
    serviceRegionId?: pulumi.Input<string>;
    /**
     * A service VPC id.
     */
    serviceVpcId?: pulumi.Input<string>;
}
