import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Gets an Agent resource.
 *
 * Uses Azure REST API version 2024-07-01.
 *
 * Other available API versions: 2023-03-01, 2023-07-01-preview, 2023-10-01, 2025-07-01. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native storagemover [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
 */
export declare function getAgent(args: GetAgentArgs, opts?: pulumi.InvokeOptions): Promise<GetAgentResult>;
export interface GetAgentArgs {
    /**
     * The name of the Agent resource.
     */
    agentName: string;
    /**
     * The name of the resource group. The name is case insensitive.
     */
    resourceGroupName: string;
    /**
     * The name of the Storage Mover resource.
     */
    storageMoverName: string;
}
/**
 * The Agent resource.
 */
export interface GetAgentResult {
    /**
     * The Agent status.
     */
    readonly agentStatus: string;
    /**
     * The Agent version.
     */
    readonly agentVersion: string;
    /**
     * The fully qualified resource ID of the Hybrid Compute resource for the Agent.
     */
    readonly arcResourceId: string;
    /**
     * The VM UUID of the Hybrid Compute resource for the Agent.
     */
    readonly arcVmUuid: string;
    /**
     * The Azure API version of the resource.
     */
    readonly azureApiVersion: string;
    /**
     * A description for the Agent.
     */
    readonly description?: string;
    readonly errorDetails: outputs.storagemover.AgentPropertiesErrorDetailsResponse;
    /**
     * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
     */
    readonly id: string;
    /**
     * The last updated time of the Agent status.
     */
    readonly lastStatusUpdate: string;
    /**
     * Local IP address reported by the Agent.
     */
    readonly localIPAddress: string;
    /**
     * Available memory reported by the Agent, in MB.
     */
    readonly memoryInMB: number;
    /**
     * The name of the resource
     */
    readonly name: string;
    /**
     * Available compute cores reported by the Agent.
     */
    readonly numberOfCores: number;
    /**
     * The provisioning state of this resource.
     */
    readonly provisioningState: string;
    /**
     * Azure Resource Manager metadata containing createdBy and modifiedBy information.
     */
    readonly systemData: outputs.storagemover.SystemDataResponse;
    /**
     * The agent's local time zone represented in Windows format.
     */
    readonly timeZone: string;
    /**
     * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     */
    readonly type: string;
    /**
     * The WAN-link upload limit schedule that applies to any Job Run the agent executes. Data plane operations (migrating files) are affected. Control plane operations ensure seamless migration functionality and are not limited by this schedule. The schedule is interpreted with the agent's local time.
     */
    readonly uploadLimitSchedule?: outputs.storagemover.UploadLimitScheduleResponse;
    /**
     * Uptime of the Agent in seconds.
     */
    readonly uptimeInSeconds: number;
}
/**
 * Gets an Agent resource.
 *
 * Uses Azure REST API version 2024-07-01.
 *
 * Other available API versions: 2023-03-01, 2023-07-01-preview, 2023-10-01, 2025-07-01. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native storagemover [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
 */
export declare function getAgentOutput(args: GetAgentOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetAgentResult>;
export interface GetAgentOutputArgs {
    /**
     * The name of the Agent resource.
     */
    agentName: pulumi.Input<string>;
    /**
     * The name of the resource group. The name is case insensitive.
     */
    resourceGroupName: pulumi.Input<string>;
    /**
     * The name of the Storage Mover resource.
     */
    storageMoverName: pulumi.Input<string>;
}
