import * as pulumi from "@pulumi/pulumi";
/**
 * Resource Type definition for AWS::AppStream::User
 */
export declare class User extends pulumi.CustomResource {
    /**
     * Get an existing User resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): User;
    /**
     * Returns true if the given object is an instance of User.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is User;
    /**
     * Returns the Amazon Resource Name (ARN) for the Amazon AppStream User resource.
     */
    readonly arn: pulumi.Output<string>;
    /**
     * The authentication type for the user.
     */
    readonly authenticationType: pulumi.Output<string>;
    /**
     * The first name, or given name, of the user.
     */
    readonly firstName: pulumi.Output<string | undefined>;
    /**
     * The last name, or surname, of the user.
     */
    readonly lastName: pulumi.Output<string | undefined>;
    /**
     * The action to take for the welcome email that is sent to a user after the user is created in the user pool. If you specify SUPPRESS, no email is sent. If you specify RESEND, do not specify the first name or last name of the user. If the value is null, the email is sent.
     */
    readonly messageAction: pulumi.Output<string | undefined>;
    /**
     * The email address of the user.
     */
    readonly userName: pulumi.Output<string>;
    /**
     * Create a User resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: UserArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a User resource.
 */
export interface UserArgs {
    /**
     * The authentication type for the user.
     */
    authenticationType: pulumi.Input<string>;
    /**
     * The first name, or given name, of the user.
     */
    firstName?: pulumi.Input<string>;
    /**
     * The last name, or surname, of the user.
     */
    lastName?: pulumi.Input<string>;
    /**
     * The action to take for the welcome email that is sent to a user after the user is created in the user pool. If you specify SUPPRESS, no email is sent. If you specify RESEND, do not specify the first name or last name of the user. If the value is null, the email is sent.
     */
    messageAction?: pulumi.Input<string>;
    /**
     * The email address of the user.
     */
    userName?: pulumi.Input<string>;
}
