import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Get a Asset
 *
 * Uses Azure REST API version 2024-11-01.
 *
 * Other available API versions: 2023-11-01-preview, 2024-09-01-preview, 2025-07-01-preview, 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 getAsset(args: GetAssetArgs, opts?: pulumi.InvokeOptions): Promise<GetAssetResult>;
export interface GetAssetArgs {
    /**
     * Asset name parameter.
     */
    assetName: string;
    /**
     * The name of the resource group. The name is case insensitive.
     */
    resourceGroupName: string;
}
/**
 * Asset definition.
 */
export interface GetAssetResult {
    /**
     * A reference to the asset endpoint profile (connection information) used by brokers to connect to an endpoint that provides data points for this asset. Must provide asset endpoint profile name.
     */
    readonly assetEndpointProfileRef: string;
    /**
     * 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;
    /**
     * Array of datasets that are part of the asset. Each dataset describes the data points that make up the set.
     */
    readonly datasets?: outputs.deviceregistry.DatasetResponse[];
    /**
     * Stringified JSON that contains connector-specific default configuration for all datasets. Each dataset can have its own configuration that overrides the default settings here.
     */
    readonly defaultDatasetsConfiguration?: string;
    /**
     * Stringified JSON that contains connector-specific default configuration for all events. Each event can have its own configuration that overrides the default settings here.
     */
    readonly defaultEventsConfiguration?: string;
    /**
     * Object that describes the default topic information for the asset.
     */
    readonly defaultTopic?: outputs.deviceregistry.TopicResponse;
    /**
     * Human-readable description of the asset.
     */
    readonly description?: string;
    /**
     * Reference to a list of discovered assets. Populated only if the asset has been created from discovery flow. Discovered asset names must be provided.
     */
    readonly discoveredAssetRefs?: string[];
    /**
     * Human-readable display name.
     */
    readonly displayName?: string;
    /**
     * Reference to the documentation.
     */
    readonly documentationUri?: string;
    /**
     * Enabled/Disabled status of the asset.
     */
    readonly enabled?: boolean;
    /**
     * Array of events that are part of the asset. Each event can have per-event configuration.
     */
    readonly events?: outputs.deviceregistry.EventResponse[];
    /**
     * The extended location.
     */
    readonly extendedLocation: outputs.deviceregistry.ExtendedLocationResponse;
    /**
     * Asset id provided by the customer.
     */
    readonly externalAssetId?: string;
    /**
     * Revision number of the hardware.
     */
    readonly hardwareRevision?: string;
    /**
     * Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
     */
    readonly id: string;
    /**
     * The geo-location where the resource lives
     */
    readonly location: string;
    /**
     * Asset manufacturer name.
     */
    readonly manufacturer?: string;
    /**
     * Asset manufacturer URI.
     */
    readonly manufacturerUri?: string;
    /**
     * Asset model name.
     */
    readonly model?: string;
    /**
     * The name of the resource
     */
    readonly name: string;
    /**
     * Asset product code.
     */
    readonly productCode?: string;
    /**
     * Provisioning state of the resource.
     */
    readonly provisioningState: string;
    /**
     * Asset serial number.
     */
    readonly serialNumber?: string;
    /**
     * Revision number of the software.
     */
    readonly softwareRevision?: string;
    /**
     * Read only object to reflect changes that have occurred on the Edge. Similar to Kubernetes status property for custom resources.
     */
    readonly status: outputs.deviceregistry.AssetStatusResponse;
    /**
     * 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;
    /**
     * Globally unique, immutable, non-reusable id.
     */
    readonly uuid: string;
    /**
     * An integer that is incremented each time the resource is modified.
     */
    readonly version: number;
}
/**
 * Get a Asset
 *
 * Uses Azure REST API version 2024-11-01.
 *
 * Other available API versions: 2023-11-01-preview, 2024-09-01-preview, 2025-07-01-preview, 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 getAssetOutput(args: GetAssetOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetAssetResult>;
export interface GetAssetOutputArgs {
    /**
     * Asset name parameter.
     */
    assetName: pulumi.Input<string>;
    /**
     * The name of the resource group. The name is case insensitive.
     */
    resourceGroupName: pulumi.Input<string>;
}
