import * as pulumi from "@pulumi/pulumi";
/**
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as sumologic from "@pulumi/sumologic";
 *
 * const _this = sumologic.getUser({
 *     id: "1234567890",
 * });
 * ```
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as sumologic from "@pulumi/sumologic";
 *
 * const that = sumologic.getUser({
 *     email: "user@example.com",
 * });
 * ```
 *
 * A user can be looked up by either `id` or `email`. One of those attributes needs to be specified.
 *
 * If both `id` and `email` have been specified, `id` takes precedence.
 *
 * ## Attributes reference
 *
 * The following attributes are exported:
 *
 * - `id` - The internal ID of the user.
 * - `email` - (Required) Email of the user.
 * - `firstName` - (Required) First name of the user.
 * - `lastName` - (Required) Last name of the user.
 * - `isActive` - (Required) This has the value true if the user is active and false if they have been deactivated.
 * - `roleIds` - (Required) List of roleIds associated with the user.
 */
export declare function getUser(args?: GetUserArgs, opts?: pulumi.InvokeOptions): Promise<GetUserResult>;
/**
 * A collection of arguments for invoking getUser.
 */
export interface GetUserArgs {
    email?: string;
    id?: string;
}
/**
 * A collection of values returned by getUser.
 */
export interface GetUserResult {
    readonly email: string;
    readonly firstName: string;
    readonly id: string;
    readonly isActive: boolean;
    readonly lastName: string;
    readonly roleIds: string[];
}
/**
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as sumologic from "@pulumi/sumologic";
 *
 * const _this = sumologic.getUser({
 *     id: "1234567890",
 * });
 * ```
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as sumologic from "@pulumi/sumologic";
 *
 * const that = sumologic.getUser({
 *     email: "user@example.com",
 * });
 * ```
 *
 * A user can be looked up by either `id` or `email`. One of those attributes needs to be specified.
 *
 * If both `id` and `email` have been specified, `id` takes precedence.
 *
 * ## Attributes reference
 *
 * The following attributes are exported:
 *
 * - `id` - The internal ID of the user.
 * - `email` - (Required) Email of the user.
 * - `firstName` - (Required) First name of the user.
 * - `lastName` - (Required) Last name of the user.
 * - `isActive` - (Required) This has the value true if the user is active and false if they have been deactivated.
 * - `roleIds` - (Required) List of roleIds associated with the user.
 */
export declare function getUserOutput(args?: GetUserOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetUserResult>;
/**
 * A collection of arguments for invoking getUser.
 */
export interface GetUserOutputArgs {
    email?: pulumi.Input<string>;
    id?: pulumi.Input<string>;
}
