import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; import * as enums from "../../types/enums"; /** * Creates a device registry that contains devices. */ export declare class Registry extends pulumi.CustomResource { /** * Get an existing Registry 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, opts?: pulumi.CustomResourceOptions): Registry; /** * Returns true if the given object is an instance of Registry. 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 Registry; /** * The credentials used to verify the device credentials. No more than 10 credentials can be bound to a single registry at a time. The verification process occurs at the time of device creation or update. If this field is empty, no verification is performed. Otherwise, the credentials of a newly created device or added credentials of an updated device should be signed with one of these registry credentials. Note, however, that existing devices will never be affected by modifications to this list of credentials: after a device has been successfully created in a registry, it should be able to connect even if its registry credentials are revoked, deleted, or modified. */ readonly credentials: pulumi.Output; /** * The configuration for notification of telemetry events received from the device. All telemetry events that were successfully published by the device and acknowledged by Cloud IoT Core are guaranteed to be delivered to Cloud Pub/Sub. If multiple configurations match a message, only the first matching configuration is used. If you try to publish a device telemetry event using MQTT without specifying a Cloud Pub/Sub topic for the device's registry, the connection closes automatically. If you try to do so using an HTTP connection, an error is returned. Up to 10 configurations may be provided. */ readonly eventNotificationConfigs: pulumi.Output; /** * The DeviceService (HTTP) configuration for this device registry. */ readonly httpConfig: pulumi.Output; readonly location: pulumi.Output; /** * **Beta Feature** The default logging verbosity for activity from devices in this registry. The verbosity level can be overridden by Device.log_level. */ readonly logLevel: pulumi.Output; /** * The MQTT configuration for this device registry. */ readonly mqttConfig: pulumi.Output; /** * The resource path name. For example, `projects/example-project/locations/us-central1/registries/my-registry`. */ readonly name: pulumi.Output; readonly project: pulumi.Output; /** * The configuration for notification of new states received from the device. State updates are guaranteed to be stored in the state history, but notifications to Cloud Pub/Sub are not guaranteed. For example, if permissions are misconfigured or the specified topic doesn't exist, no notification will be published but the state will still be stored in Cloud IoT Core. */ readonly stateNotificationConfig: pulumi.Output; /** * Create a Registry 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?: RegistryArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Registry resource. */ export interface RegistryArgs { /** * The credentials used to verify the device credentials. No more than 10 credentials can be bound to a single registry at a time. The verification process occurs at the time of device creation or update. If this field is empty, no verification is performed. Otherwise, the credentials of a newly created device or added credentials of an updated device should be signed with one of these registry credentials. Note, however, that existing devices will never be affected by modifications to this list of credentials: after a device has been successfully created in a registry, it should be able to connect even if its registry credentials are revoked, deleted, or modified. */ credentials?: pulumi.Input[]>; /** * The configuration for notification of telemetry events received from the device. All telemetry events that were successfully published by the device and acknowledged by Cloud IoT Core are guaranteed to be delivered to Cloud Pub/Sub. If multiple configurations match a message, only the first matching configuration is used. If you try to publish a device telemetry event using MQTT without specifying a Cloud Pub/Sub topic for the device's registry, the connection closes automatically. If you try to do so using an HTTP connection, an error is returned. Up to 10 configurations may be provided. */ eventNotificationConfigs?: pulumi.Input[]>; /** * The DeviceService (HTTP) configuration for this device registry. */ httpConfig?: pulumi.Input; /** * The identifier of this device registry. For example, `myRegistry`. */ id?: pulumi.Input; location?: pulumi.Input; /** * **Beta Feature** The default logging verbosity for activity from devices in this registry. The verbosity level can be overridden by Device.log_level. */ logLevel?: pulumi.Input; /** * The MQTT configuration for this device registry. */ mqttConfig?: pulumi.Input; /** * The resource path name. For example, `projects/example-project/locations/us-central1/registries/my-registry`. */ name?: pulumi.Input; project?: pulumi.Input; /** * The configuration for notification of new states received from the device. State updates are guaranteed to be stored in the state history, but notifications to Cloud Pub/Sub are not guaranteed. For example, if permissions are misconfigured or the specified topic doesn't exist, no notification will be published but the state will still be stored in Cloud IoT Core. */ stateNotificationConfig?: pulumi.Input; }