azure-sdk-for-js/sdk/iothub/arm-iothub-profile-2020-09-.../review/arm-iothub-profile-2020-09-...

30 KiB

API Report File for "@azure/arm-iothub-profile-2020-09-01-hybrid"

Do not edit this file. It is a report generated by API Extractor.


import * as coreAuth from '@azure/core-auth';
import * as coreClient from '@azure/core-client';
import { PagedAsyncIterableIterator } from '@azure/core-paging';
import { PollerLike } from '@azure/core-lro';
import { PollOperationState } from '@azure/core-lro';

// @public
export type AccessRights = "RegistryRead" | "RegistryWrite" | "ServiceConnect" | "DeviceConnect" | "RegistryRead, RegistryWrite" | "RegistryRead, ServiceConnect" | "RegistryRead, DeviceConnect" | "RegistryWrite, ServiceConnect" | "RegistryWrite, DeviceConnect" | "ServiceConnect, DeviceConnect" | "RegistryRead, RegistryWrite, ServiceConnect" | "RegistryRead, RegistryWrite, DeviceConnect" | "RegistryRead, ServiceConnect, DeviceConnect" | "RegistryWrite, ServiceConnect, DeviceConnect" | "RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect";

// @public
export type Capabilities = string;

// @public
export interface CertificateBodyDescription {
    certificate?: string;
}

// @public
export interface CertificateDescription {
    readonly etag?: string;
    readonly id?: string;
    readonly name?: string;
    properties?: CertificateProperties;
    readonly type?: string;
}

// @public
export interface CertificateListDescription {
    value?: CertificateDescription[];
}

// @public
export interface CertificateProperties {
    certificate?: string;
    readonly created?: Date;
    readonly expiry?: Date;
    readonly isVerified?: boolean;
    readonly subject?: string;
    readonly thumbprint?: string;
    readonly updated?: Date;
}

// @public
export interface CertificatePropertiesWithNonce {
    readonly certificate?: string;
    readonly created?: Date;
    readonly expiry?: Date;
    readonly isVerified?: boolean;
    readonly subject?: string;
    readonly thumbprint?: string;
    readonly updated?: Date;
    readonly verificationCode?: string;
}

// @public
export interface Certificates {
    createOrUpdate(resourceGroupName: string, resourceName: string, certificateName: string, certificateDescription: CertificateBodyDescription, options?: CertificatesCreateOrUpdateOptionalParams): Promise<CertificatesCreateOrUpdateResponse>;
    delete(resourceGroupName: string, resourceName: string, certificateName: string, ifMatch: string, options?: CertificatesDeleteOptionalParams): Promise<void>;
    generateVerificationCode(resourceGroupName: string, resourceName: string, certificateName: string, ifMatch: string, options?: CertificatesGenerateVerificationCodeOptionalParams): Promise<CertificatesGenerateVerificationCodeResponse>;
    get(resourceGroupName: string, resourceName: string, certificateName: string, options?: CertificatesGetOptionalParams): Promise<CertificatesGetResponse>;
    listByIotHub(resourceGroupName: string, resourceName: string, options?: CertificatesListByIotHubOptionalParams): Promise<CertificatesListByIotHubResponse>;
    verify(resourceGroupName: string, resourceName: string, certificateName: string, ifMatch: string, certificateVerificationBody: CertificateVerificationDescription, options?: CertificatesVerifyOptionalParams): Promise<CertificatesVerifyResponse>;
}

// @public
export interface CertificatesCreateOrUpdateOptionalParams extends coreClient.OperationOptions {
    ifMatch?: string;
}

// @public
export type CertificatesCreateOrUpdateResponse = CertificateDescription;

// @public
export interface CertificatesDeleteOptionalParams extends coreClient.OperationOptions {
}

// @public
export interface CertificatesGenerateVerificationCodeOptionalParams extends coreClient.OperationOptions {
}

// @public
export type CertificatesGenerateVerificationCodeResponse = CertificateWithNonceDescription;

// @public
export interface CertificatesGetOptionalParams extends coreClient.OperationOptions {
}

// @public
export type CertificatesGetResponse = CertificateDescription;

// @public
export interface CertificatesListByIotHubOptionalParams extends coreClient.OperationOptions {
}

// @public
export type CertificatesListByIotHubResponse = CertificateListDescription;

// @public
export interface CertificatesVerifyOptionalParams extends coreClient.OperationOptions {
}

// @public
export type CertificatesVerifyResponse = CertificateDescription;

// @public
export interface CertificateVerificationDescription {
    certificate?: string;
}

// @public
export interface CertificateWithNonceDescription {
    readonly etag?: string;
    readonly id?: string;
    readonly name?: string;
    properties?: CertificatePropertiesWithNonce;
    readonly type?: string;
}

// @public
export interface CloudToDeviceProperties {
    defaultTtlAsIso8601?: string;
    feedback?: FeedbackProperties;
    maxDeliveryCount?: number;
}

// @public
export interface EndpointHealthData {
    endpointId?: string;
    healthStatus?: EndpointHealthStatus;
}

// @public
export interface EndpointHealthDataListResult {
    readonly nextLink?: string;
    value?: EndpointHealthData[];
}

// @public
export type EndpointHealthStatus = string;

// @public
export interface EnrichmentProperties {
    endpointNames: string[];
    key: string;
    value: string;
}

// @public
export interface ErrorDetails {
    readonly code?: string;
    readonly details?: string;
    readonly httpStatusCode?: string;
    readonly message?: string;
}

// @public
export interface EventHubConsumerGroupInfo {
    readonly etag?: string;
    readonly id?: string;
    readonly name?: string;
    properties?: {
        [propertyName: string]: string;
    };
    readonly type?: string;
}

// @public
export interface EventHubConsumerGroupsListResult {
    readonly nextLink?: string;
    value?: EventHubConsumerGroupInfo[];
}

// @public
export interface EventHubProperties {
    readonly endpoint?: string;
    partitionCount?: number;
    readonly partitionIds?: string[];
    readonly path?: string;
    retentionTimeInDays?: number;
}

// @public
export interface ExportDevicesRequest {
    excludeKeys: boolean;
    exportBlobContainerUri: string;
}

// @public
export interface FailoverInput {
    failoverRegion: string;
}

// @public
export interface FallbackRouteProperties {
    condition?: string;
    endpointNames: string[];
    isEnabled: boolean;
    name?: string;
    source: RoutingSource;
}

// @public
export interface FeedbackProperties {
    lockDurationAsIso8601?: string;
    maxDeliveryCount?: number;
    ttlAsIso8601?: string;
}

// @public
export function getContinuationToken(page: unknown): string | undefined;

// @public
export interface ImportDevicesRequest {
    inputBlobContainerUri: string;
    outputBlobContainerUri: string;
}

// @public
export interface IotHub {
    beginManualFailover(iotHubName: string, resourceGroupName: string, failoverInput: FailoverInput, options?: IotHubManualFailoverOptionalParams): Promise<PollerLike<PollOperationState<void>, void>>;
    beginManualFailoverAndWait(iotHubName: string, resourceGroupName: string, failoverInput: FailoverInput, options?: IotHubManualFailoverOptionalParams): Promise<void>;
}

// @public
export interface IotHubCapacity {
    readonly default?: number;
    readonly maximum?: number;
    readonly minimum?: number;
    readonly scaleType?: IotHubScaleType;
}

// @public (undocumented)
export class IotHubClient extends coreClient.ServiceClient {
    // (undocumented)
    $host: string;
    constructor(credentials: coreAuth.TokenCredential, subscriptionId: string, options?: IotHubClientOptionalParams);
    // (undocumented)
    apiVersion: string;
    // (undocumented)
    certificates: Certificates;
    // (undocumented)
    iotHub: IotHub;
    // (undocumented)
    iotHubResource: IotHubResource;
    // (undocumented)
    operations: Operations;
    // (undocumented)
    resourceProviderCommon: ResourceProviderCommon;
    // (undocumented)
    subscriptionId: string;
}

// @public
export interface IotHubClientOptionalParams extends coreClient.ServiceClientOptions {
    $host?: string;
    apiVersion?: string;
    endpoint?: string;
}

// @public
export interface IotHubDescription extends Resource {
    etag?: string;
    properties?: IotHubProperties;
    sku: IotHubSkuInfo;
}

// @public
export interface IotHubDescriptionListResult {
    readonly nextLink?: string;
    value?: IotHubDescription[];
}

// @public
export interface IotHubLocationDescription {
    location?: string;
    role?: IotHubReplicaRoleType;
}

// @public
export interface IotHubManualFailoverOptionalParams extends coreClient.OperationOptions {
    resumeFrom?: string;
    updateIntervalInMs?: number;
}

// @public
export interface IotHubNameAvailabilityInfo {
    message?: string;
    readonly nameAvailable?: boolean;
    readonly reason?: IotHubNameUnavailabilityReason;
}

// @public
export type IotHubNameUnavailabilityReason = "Invalid" | "AlreadyExists";

// @public
export interface IotHubProperties {
    authorizationPolicies?: SharedAccessSignatureAuthorizationRule[];
    cloudToDevice?: CloudToDeviceProperties;
    comments?: string;
    deviceStreams?: IotHubPropertiesDeviceStreams;
    enableFileUploadNotifications?: boolean;
    eventHubEndpoints?: {
        [propertyName: string]: EventHubProperties;
    };
    features?: Capabilities;
    readonly hostName?: string;
    ipFilterRules?: IpFilterRule[];
    readonly locations?: IotHubLocationDescription[];
    messagingEndpoints?: {
        [propertyName: string]: MessagingEndpointProperties;
    };
    readonly provisioningState?: string;
    routing?: RoutingProperties;
    readonly state?: string;
    storageEndpoints?: {
        [propertyName: string]: StorageEndpointProperties;
    };
}

// @public
export interface IotHubPropertiesDeviceStreams {
    streamingEndpoints?: string[];
}

// @public
export interface IotHubQuotaMetricInfo {
    readonly currentValue?: number;
    readonly maxValue?: number;
    readonly name?: string;
}

// @public
export interface IotHubQuotaMetricInfoListResult {
    readonly nextLink?: string;
    value?: IotHubQuotaMetricInfo[];
}

// @public
export type IotHubReplicaRoleType = string;

// @public
export interface IotHubResource {
    beginCreateOrUpdate(resourceGroupName: string, resourceName: string, iotHubDescription: IotHubDescription, options?: IotHubResourceCreateOrUpdateOptionalParams): Promise<PollerLike<PollOperationState<IotHubResourceCreateOrUpdateResponse>, IotHubResourceCreateOrUpdateResponse>>;
    beginCreateOrUpdateAndWait(resourceGroupName: string, resourceName: string, iotHubDescription: IotHubDescription, options?: IotHubResourceCreateOrUpdateOptionalParams): Promise<IotHubResourceCreateOrUpdateResponse>;
    beginDelete(resourceGroupName: string, resourceName: string, options?: IotHubResourceDeleteOptionalParams): Promise<PollerLike<PollOperationState<IotHubResourceDeleteResponse>, IotHubResourceDeleteResponse>>;
    beginDeleteAndWait(resourceGroupName: string, resourceName: string, options?: IotHubResourceDeleteOptionalParams): Promise<IotHubResourceDeleteResponse>;
    beginUpdate(resourceGroupName: string, resourceName: string, iotHubTags: TagsResource, options?: IotHubResourceUpdateOptionalParams): Promise<PollerLike<PollOperationState<IotHubResourceUpdateResponse>, IotHubResourceUpdateResponse>>;
    beginUpdateAndWait(resourceGroupName: string, resourceName: string, iotHubTags: TagsResource, options?: IotHubResourceUpdateOptionalParams): Promise<IotHubResourceUpdateResponse>;
    checkNameAvailability(operationInputs: OperationInputs, options?: IotHubResourceCheckNameAvailabilityOptionalParams): Promise<IotHubResourceCheckNameAvailabilityResponse>;
    createEventHubConsumerGroup(resourceGroupName: string, resourceName: string, eventHubEndpointName: string, name: string, options?: IotHubResourceCreateEventHubConsumerGroupOptionalParams): Promise<IotHubResourceCreateEventHubConsumerGroupResponse>;
    deleteEventHubConsumerGroup(resourceGroupName: string, resourceName: string, eventHubEndpointName: string, name: string, options?: IotHubResourceDeleteEventHubConsumerGroupOptionalParams): Promise<void>;
    exportDevices(resourceGroupName: string, resourceName: string, exportDevicesParameters: ExportDevicesRequest, options?: IotHubResourceExportDevicesOptionalParams): Promise<IotHubResourceExportDevicesResponse>;
    get(resourceGroupName: string, resourceName: string, options?: IotHubResourceGetOptionalParams): Promise<IotHubResourceGetResponse>;
    getEventHubConsumerGroup(resourceGroupName: string, resourceName: string, eventHubEndpointName: string, name: string, options?: IotHubResourceGetEventHubConsumerGroupOptionalParams): Promise<IotHubResourceGetEventHubConsumerGroupResponse>;
    getJob(resourceGroupName: string, resourceName: string, jobId: string, options?: IotHubResourceGetJobOptionalParams): Promise<IotHubResourceGetJobResponse>;
    getKeysForKeyName(resourceGroupName: string, resourceName: string, keyName: string, options?: IotHubResourceGetKeysForKeyNameOptionalParams): Promise<IotHubResourceGetKeysForKeyNameResponse>;
    getStats(resourceGroupName: string, resourceName: string, options?: IotHubResourceGetStatsOptionalParams): Promise<IotHubResourceGetStatsResponse>;
    importDevices(resourceGroupName: string, resourceName: string, importDevicesParameters: ImportDevicesRequest, options?: IotHubResourceImportDevicesOptionalParams): Promise<IotHubResourceImportDevicesResponse>;
    listByResourceGroup(resourceGroupName: string, options?: IotHubResourceListByResourceGroupOptionalParams): PagedAsyncIterableIterator<IotHubDescription>;
    listBySubscription(options?: IotHubResourceListBySubscriptionOptionalParams): PagedAsyncIterableIterator<IotHubDescription>;
    listEndpointHealth(resourceGroupName: string, iotHubName: string, options?: IotHubResourceGetEndpointHealthOptionalParams): PagedAsyncIterableIterator<EndpointHealthData>;
    listEventHubConsumerGroups(resourceGroupName: string, resourceName: string, eventHubEndpointName: string, options?: IotHubResourceListEventHubConsumerGroupsOptionalParams): PagedAsyncIterableIterator<EventHubConsumerGroupInfo>;
    listJobs(resourceGroupName: string, resourceName: string, options?: IotHubResourceListJobsOptionalParams): PagedAsyncIterableIterator<JobResponse>;
    listKeys(resourceGroupName: string, resourceName: string, options?: IotHubResourceListKeysOptionalParams): PagedAsyncIterableIterator<SharedAccessSignatureAuthorizationRule>;
    listQuotaMetrics(resourceGroupName: string, resourceName: string, options?: IotHubResourceGetQuotaMetricsOptionalParams): PagedAsyncIterableIterator<IotHubQuotaMetricInfo>;
    listValidSkus(resourceGroupName: string, resourceName: string, options?: IotHubResourceGetValidSkusOptionalParams): PagedAsyncIterableIterator<IotHubSkuDescription>;
    testAllRoutes(iotHubName: string, resourceGroupName: string, input: TestAllRoutesInput, options?: IotHubResourceTestAllRoutesOptionalParams): Promise<IotHubResourceTestAllRoutesResponse>;
    testRoute(iotHubName: string, resourceGroupName: string, input: TestRouteInput, options?: IotHubResourceTestRouteOptionalParams): Promise<IotHubResourceTestRouteResponse>;
}

// @public
export interface IotHubResourceCheckNameAvailabilityOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceCheckNameAvailabilityResponse = IotHubNameAvailabilityInfo;

// @public
export interface IotHubResourceCreateEventHubConsumerGroupOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceCreateEventHubConsumerGroupResponse = EventHubConsumerGroupInfo;

// @public
export interface IotHubResourceCreateOrUpdateOptionalParams extends coreClient.OperationOptions {
    ifMatch?: string;
    resumeFrom?: string;
    updateIntervalInMs?: number;
}

// @public
export type IotHubResourceCreateOrUpdateResponse = IotHubDescription;

// @public
export interface IotHubResourceDeleteEventHubConsumerGroupOptionalParams extends coreClient.OperationOptions {
}

// @public
export interface IotHubResourceDeleteOptionalParams extends coreClient.OperationOptions {
    resumeFrom?: string;
    updateIntervalInMs?: number;
}

// @public
export type IotHubResourceDeleteResponse = IotHubDescription;

// @public
export interface IotHubResourceExportDevicesOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceExportDevicesResponse = JobResponse;

// @public
export interface IotHubResourceGetEndpointHealthNextOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceGetEndpointHealthNextResponse = EndpointHealthDataListResult;

// @public
export interface IotHubResourceGetEndpointHealthOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceGetEndpointHealthResponse = EndpointHealthDataListResult;

// @public
export interface IotHubResourceGetEventHubConsumerGroupOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceGetEventHubConsumerGroupResponse = EventHubConsumerGroupInfo;

// @public
export interface IotHubResourceGetJobOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceGetJobResponse = JobResponse;

// @public
export interface IotHubResourceGetKeysForKeyNameOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceGetKeysForKeyNameResponse = SharedAccessSignatureAuthorizationRule;

// @public
export interface IotHubResourceGetOptionalParams extends coreClient.OperationOptions {
}

// @public
export interface IotHubResourceGetQuotaMetricsNextOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceGetQuotaMetricsNextResponse = IotHubQuotaMetricInfoListResult;

// @public
export interface IotHubResourceGetQuotaMetricsOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceGetQuotaMetricsResponse = IotHubQuotaMetricInfoListResult;

// @public
export type IotHubResourceGetResponse = IotHubDescription;

// @public
export interface IotHubResourceGetStatsOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceGetStatsResponse = RegistryStatistics;

// @public
export interface IotHubResourceGetValidSkusNextOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceGetValidSkusNextResponse = IotHubSkuDescriptionListResult;

// @public
export interface IotHubResourceGetValidSkusOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceGetValidSkusResponse = IotHubSkuDescriptionListResult;

// @public
export interface IotHubResourceImportDevicesOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceImportDevicesResponse = JobResponse;

// @public
export interface IotHubResourceListByResourceGroupNextOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceListByResourceGroupNextResponse = IotHubDescriptionListResult;

// @public
export interface IotHubResourceListByResourceGroupOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceListByResourceGroupResponse = IotHubDescriptionListResult;

// @public
export interface IotHubResourceListBySubscriptionNextOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceListBySubscriptionNextResponse = IotHubDescriptionListResult;

// @public
export interface IotHubResourceListBySubscriptionOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceListBySubscriptionResponse = IotHubDescriptionListResult;

// @public
export interface IotHubResourceListEventHubConsumerGroupsNextOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceListEventHubConsumerGroupsNextResponse = EventHubConsumerGroupsListResult;

// @public
export interface IotHubResourceListEventHubConsumerGroupsOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceListEventHubConsumerGroupsResponse = EventHubConsumerGroupsListResult;

// @public
export interface IotHubResourceListJobsNextOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceListJobsNextResponse = JobResponseListResult;

// @public
export interface IotHubResourceListJobsOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceListJobsResponse = JobResponseListResult;

// @public
export interface IotHubResourceListKeysNextOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceListKeysNextResponse = SharedAccessSignatureAuthorizationRuleListResult;

// @public
export interface IotHubResourceListKeysOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceListKeysResponse = SharedAccessSignatureAuthorizationRuleListResult;

// @public
export interface IotHubResourceTestAllRoutesOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceTestAllRoutesResponse = TestAllRoutesResult;

// @public
export interface IotHubResourceTestRouteOptionalParams extends coreClient.OperationOptions {
}

// @public
export type IotHubResourceTestRouteResponse = TestRouteResult;

// @public
export interface IotHubResourceUpdateOptionalParams extends coreClient.OperationOptions {
    resumeFrom?: string;
    updateIntervalInMs?: number;
}

// @public
export type IotHubResourceUpdateResponse = IotHubDescription;

// @public
export type IotHubScaleType = "Automatic" | "Manual" | "None";

// @public
export type IotHubSku = string;

// @public
export interface IotHubSkuDescription {
    capacity: IotHubCapacity;
    readonly resourceType?: string;
    sku: IotHubSkuInfo;
}

// @public
export interface IotHubSkuDescriptionListResult {
    readonly nextLink?: string;
    value?: IotHubSkuDescription[];
}

// @public
export interface IotHubSkuInfo {
    capacity?: number;
    name: IotHubSku;
    readonly tier?: IotHubSkuTier;
}

// @public
export type IotHubSkuTier = "Free" | "Standard" | "Basic";

// @public
export type IpFilterActionType = "Accept" | "Reject";

// @public
export interface IpFilterRule {
    action: IpFilterActionType;
    filterName: string;
    ipMask: string;
}

// @public
export interface JobResponse {
    readonly endTimeUtc?: Date;
    readonly failureReason?: string;
    readonly jobId?: string;
    readonly parentJobId?: string;
    readonly startTimeUtc?: Date;
    readonly status?: JobStatus;
    readonly statusMessage?: string;
    readonly type?: JobType;
}

// @public
export interface JobResponseListResult {
    readonly nextLink?: string;
    value?: JobResponse[];
}

// @public
export type JobStatus = "unknown" | "enqueued" | "running" | "completed" | "failed" | "cancelled";

// @public
export type JobType = string;

// @public
export enum KnownCapabilities {
    DeviceManagement = "DeviceManagement",
    None = "None"
}

// @public
export enum KnownEndpointHealthStatus {
    Dead = "dead",
    Healthy = "healthy",
    Unhealthy = "unhealthy",
    Unknown = "unknown"
}

// @public
export enum KnownIotHubReplicaRoleType {
    Primary = "primary",
    Secondary = "secondary"
}

// @public
export enum KnownIotHubSku {
    B1 = "B1",
    B2 = "B2",
    B3 = "B3",
    F1 = "F1",
    S1 = "S1",
    S2 = "S2",
    S3 = "S3"
}

// @public
export enum KnownJobType {
    Backup = "backup",
    Export = "export",
    FactoryResetDevice = "factoryResetDevice",
    FirmwareUpdate = "firmwareUpdate",
    Import = "import",
    ReadDeviceProperties = "readDeviceProperties",
    RebootDevice = "rebootDevice",
    Unknown = "unknown",
    UpdateDeviceConfiguration = "updateDeviceConfiguration",
    WriteDeviceProperties = "writeDeviceProperties"
}

// @public
export enum KnownRouteErrorSeverity {
    Error = "error",
    Warning = "warning"
}

// @public
export enum KnownRoutingSource {
    DeviceJobLifecycleEvents = "DeviceJobLifecycleEvents",
    DeviceLifecycleEvents = "DeviceLifecycleEvents",
    DeviceMessages = "DeviceMessages",
    DigitalTwinChangeEvents = "DigitalTwinChangeEvents",
    Invalid = "Invalid",
    TwinChangeEvents = "TwinChangeEvents"
}

// @public
export enum KnownRoutingStorageContainerPropertiesEncoding {
    Avro = "Avro",
    AvroDeflate = "AvroDeflate",
    Json = "JSON"
}

// @public
export enum KnownTestResultStatus {
    False = "false",
    True = "true",
    Undefined = "undefined"
}

// @public
export interface MatchedRoute {
    properties?: RouteProperties;
}

// @public
export interface MessagingEndpointProperties {
    lockDurationAsIso8601?: string;
    maxDeliveryCount?: number;
    ttlAsIso8601?: string;
}

// @public
export interface Name {
    localizedValue?: string;
    value?: string;
}

// @public
export interface Operation {
    display?: OperationDisplay;
    readonly name?: string;
}

// @public
export interface OperationDisplay {
    readonly description?: string;
    readonly operation?: string;
    readonly provider?: string;
    readonly resource?: string;
}

// @public
export interface OperationInputs {
    name: string;
}

// @public
export interface OperationListResult {
    readonly nextLink?: string;
    readonly value?: Operation[];
}

// @public
export interface Operations {
    list(options?: OperationsListOptionalParams): PagedAsyncIterableIterator<Operation>;
}

// @public
export interface OperationsListNextOptionalParams extends coreClient.OperationOptions {
}

// @public
export type OperationsListNextResponse = OperationListResult;

// @public
export interface OperationsListOptionalParams extends coreClient.OperationOptions {
}

// @public
export type OperationsListResponse = OperationListResult;

// @public
export interface RegistryStatistics {
    readonly disabledDeviceCount?: number;
    readonly enabledDeviceCount?: number;
    readonly totalDeviceCount?: number;
}

// @public
export interface Resource {
    readonly id?: string;
    location: string;
    readonly name?: string;
    tags?: {
        [propertyName: string]: string;
    };
    readonly type?: string;
}

// @public
export interface ResourceProviderCommon {
    getSubscriptionQuota(options?: ResourceProviderCommonGetSubscriptionQuotaOptionalParams): Promise<ResourceProviderCommonGetSubscriptionQuotaResponse>;
}

// @public
export interface ResourceProviderCommonGetSubscriptionQuotaOptionalParams extends coreClient.OperationOptions {
}

// @public
export type ResourceProviderCommonGetSubscriptionQuotaResponse = UserSubscriptionQuotaListResult;

// @public
export interface RouteCompilationError {
    location?: RouteErrorRange;
    message?: string;
    severity?: RouteErrorSeverity;
}

// @public
export interface RouteErrorPosition {
    column?: number;
    line?: number;
}

// @public
export interface RouteErrorRange {
    end?: RouteErrorPosition;
    start?: RouteErrorPosition;
}

// @public
export type RouteErrorSeverity = string;

// @public
export interface RouteProperties {
    condition?: string;
    endpointNames: string[];
    isEnabled: boolean;
    name: string;
    source: RoutingSource;
}

// @public
export interface RoutingEndpoints {
    eventHubs?: RoutingEventHubProperties[];
    serviceBusQueues?: RoutingServiceBusQueueEndpointProperties[];
    serviceBusTopics?: RoutingServiceBusTopicEndpointProperties[];
    storageContainers?: RoutingStorageContainerProperties[];
}

// @public
export interface RoutingEventHubProperties {
    connectionString: string;
    name: string;
    resourceGroup?: string;
    subscriptionId?: string;
}

// @public
export interface RoutingMessage {
    appProperties?: {
        [propertyName: string]: string;
    };
    body?: string;
    systemProperties?: {
        [propertyName: string]: string;
    };
}

// @public
export interface RoutingProperties {
    endpoints?: RoutingEndpoints;
    enrichments?: EnrichmentProperties[];
    fallbackRoute?: FallbackRouteProperties;
    routes?: RouteProperties[];
}

// @public
export interface RoutingServiceBusQueueEndpointProperties {
    connectionString: string;
    name: string;
    resourceGroup?: string;
    subscriptionId?: string;
}

// @public
export interface RoutingServiceBusTopicEndpointProperties {
    connectionString: string;
    name: string;
    resourceGroup?: string;
    subscriptionId?: string;
}

// @public
export type RoutingSource = string;

// @public
export interface RoutingStorageContainerProperties {
    batchFrequencyInSeconds?: number;
    connectionString: string;
    containerName: string;
    encoding?: RoutingStorageContainerPropertiesEncoding;
    fileNameFormat?: string;
    maxChunkSizeInBytes?: number;
    name: string;
    resourceGroup?: string;
    subscriptionId?: string;
}

// @public
export type RoutingStorageContainerPropertiesEncoding = string;

// @public
export interface RoutingTwin {
    // (undocumented)
    properties?: RoutingTwinProperties;
    tags?: Record<string, unknown>;
}

// @public (undocumented)
export interface RoutingTwinProperties {
    desired?: Record<string, unknown>;
    reported?: Record<string, unknown>;
}

// @public
export interface SharedAccessSignatureAuthorizationRule {
    keyName: string;
    primaryKey?: string;
    rights: AccessRights;
    secondaryKey?: string;
}

// @public
export interface SharedAccessSignatureAuthorizationRuleListResult {
    readonly nextLink?: string;
    value?: SharedAccessSignatureAuthorizationRule[];
}

// @public
export interface StorageEndpointProperties {
    connectionString: string;
    containerName: string;
    sasTtlAsIso8601?: string;
}

// @public
export interface TagsResource {
    tags?: {
        [propertyName: string]: string;
    };
}

// @public
export interface TestAllRoutesInput {
    message?: RoutingMessage;
    routingSource?: RoutingSource;
    twin?: RoutingTwin;
}

// @public
export interface TestAllRoutesResult {
    routes?: MatchedRoute[];
}

// @public
export type TestResultStatus = string;

// @public
export interface TestRouteInput {
    message?: RoutingMessage;
    route: RouteProperties;
    twin?: RoutingTwin;
}

// @public
export interface TestRouteResult {
    details?: TestRouteResultDetails;
    result?: TestResultStatus;
}

// @public
export interface TestRouteResultDetails {
    compilationErrors?: RouteCompilationError[];
}

// @public
export interface UserSubscriptionQuota {
    currentValue?: number;
    id?: string;
    limit?: number;
    name?: Name;
    type?: string;
    unit?: string;
}

// @public
export interface UserSubscriptionQuotaListResult {
    readonly nextLink?: string;
    // (undocumented)
    value?: UserSubscriptionQuota[];
}

// (No @packageDocumentation comment for this package)