import * as pulumi from "@pulumi/pulumi";
/**
 * !> The data source API endpoint has been deprecated, please use dynatrace.getEntity with entity type `SERVICE` instead.
 *
 * The service data source allows the service ID to be retrieved by its name and optionally tags / tag-value pairs.
 *
 * - `name` queries for all services with the specified name
 * - `tags` (optional) refers to the tags that need to be present for the service (inclusive)
 *
 * If multiple services match the given criteria, the first result will be retrieved.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as dynatrace from "@pulumi/dynatrace";
 * import * as dynatrace from "@pulumiverse/dynatrace";
 *
 * const test = dynatrace.getService({
 *     name: "Example",
 *     tags: [
 *         "TerraformKeyTest",
 *         "TerraformKeyValueTest=TestValue",
 *     ],
 * });
 * const _name_ = new dynatrace.KeyRequests("#name#", {service: test.then(test => test.id)});
 * ```
 */
export declare function getService(args: GetServiceArgs, opts?: pulumi.InvokeOptions): Promise<GetServiceResult>;
/**
 * A collection of arguments for invoking getService.
 */
export interface GetServiceArgs {
    name: string;
    operator?: string;
    /**
     * Required tags of the service to find
     */
    tags?: string[];
}
/**
 * A collection of values returned by getService.
 */
export interface GetServiceResult {
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly name: string;
    readonly operator?: string;
    /**
     * Required tags of the service to find
     */
    readonly tags?: string[];
}
/**
 * !> The data source API endpoint has been deprecated, please use dynatrace.getEntity with entity type `SERVICE` instead.
 *
 * The service data source allows the service ID to be retrieved by its name and optionally tags / tag-value pairs.
 *
 * - `name` queries for all services with the specified name
 * - `tags` (optional) refers to the tags that need to be present for the service (inclusive)
 *
 * If multiple services match the given criteria, the first result will be retrieved.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as dynatrace from "@pulumi/dynatrace";
 * import * as dynatrace from "@pulumiverse/dynatrace";
 *
 * const test = dynatrace.getService({
 *     name: "Example",
 *     tags: [
 *         "TerraformKeyTest",
 *         "TerraformKeyValueTest=TestValue",
 *     ],
 * });
 * const _name_ = new dynatrace.KeyRequests("#name#", {service: test.then(test => test.id)});
 * ```
 */
export declare function getServiceOutput(args: GetServiceOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetServiceResult>;
/**
 * A collection of arguments for invoking getService.
 */
export interface GetServiceOutputArgs {
    name: pulumi.Input<string>;
    operator?: pulumi.Input<string>;
    /**
     * Required tags of the service to find
     */
    tags?: pulumi.Input<pulumi.Input<string>[]>;
}
