import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Get a NamespaceDevice
 *
 * Uses Azure REST API version 2025-07-01-preview.
 *
 * Other available API versions: 2025-10-01, 2025-11-01-preview. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native deviceregistry [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
 */
export declare function getNamespaceDevice(args: GetNamespaceDeviceArgs, opts?: pulumi.InvokeOptions): Promise<GetNamespaceDeviceResult>;
export interface GetNamespaceDeviceArgs {
    /**
     * The name of the device.
     */
    deviceName: string;
    /**
     * The name of the namespace.
     */
    namespaceName: string;
    /**
     * The name of the resource group. The name is case insensitive.
     */
    resourceGroupName: string;
}
/**
 * Device definition.
 */
export interface GetNamespaceDeviceResult {
    /**
     * A set of key-value pairs that contain custom attributes set by the customer.
     */
    readonly attributes?: any;
    /**
     * The Azure API version of the resource.
     */
    readonly azureApiVersion: string;
    /**
     * Reference to a device. Populated only if the device had been created from discovery flow. Discovered device name must be provided.
     */
    readonly discoveredDeviceRef?: string;
    /**
     * Indicates if the resource is enabled or not.
     */
    readonly enabled?: boolean;
    /**
     * Property bag containing the device's unassigned and assigned endpoints.
     */
    readonly endpoints?: outputs.deviceregistry.MessagingEndpointsResponse;
    /**
     * Resource Tag.
     */
    readonly etag: string;
    /**
     * The extended location.
     */
    readonly extendedLocation?: outputs.deviceregistry.ExtendedLocationResponse;
    /**
     * The Device ID provided by the customer.
     */
    readonly externalDeviceId?: string;
    /**
     * Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
     */
    readonly id: string;
    /**
     * A timestamp (in UTC) that is updated each time the resource is modified.
     */
    readonly lastTransitionTime: string;
    /**
     * The geo-location where the resource lives
     */
    readonly location: string;
    /**
     * Device manufacturer.
     */
    readonly manufacturer?: string;
    /**
     * Device model.
     */
    readonly model?: string;
    /**
     * The name of the resource
     */
    readonly name: string;
    /**
     * Device operating system.
     */
    readonly operatingSystem?: string;
    /**
     * Device operating system version.
     */
    readonly operatingSystemVersion?: string;
    /**
     * Provisioning state of the resource.
     */
    readonly provisioningState: string;
    /**
     * Device status updates.
     */
    readonly status: outputs.deviceregistry.DeviceStatusResponse;
    /**
     * Azure Resource Manager metadata containing createdBy and modifiedBy information.
     */
    readonly systemData: outputs.deviceregistry.SystemDataResponse;
    /**
     * Resource tags.
     */
    readonly tags?: {
        [key: string]: string;
    };
    /**
     * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     */
    readonly type: string;
    /**
     * A unique identifier for the device.
     */
    readonly uuid: string;
    /**
     * An integer that is incremented each time the resource is modified.
     */
    readonly version: number;
}
/**
 * Get a NamespaceDevice
 *
 * Uses Azure REST API version 2025-07-01-preview.
 *
 * Other available API versions: 2025-10-01, 2025-11-01-preview. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native deviceregistry [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
 */
export declare function getNamespaceDeviceOutput(args: GetNamespaceDeviceOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetNamespaceDeviceResult>;
export interface GetNamespaceDeviceOutputArgs {
    /**
     * The name of the device.
     */
    deviceName: pulumi.Input<string>;
    /**
     * The name of the namespace.
     */
    namespaceName: pulumi.Input<string>;
    /**
     * The name of the resource group. The name is case insensitive.
     */
    resourceGroupName: pulumi.Input<string>;
}
