## API Report File for "@azure/arm-security"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts

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 AadConnectivityState = string;

// @public
export interface AadConnectivityStateAutoGenerated {
    connectivityState?: AadConnectivityState;
}

// @public
export type AadExternalSecuritySolution = ExternalSecuritySolution & {
    properties?: AadSolutionProperties;
};

// @public
export type AadSolutionProperties = ExternalSecuritySolutionProperties & AadConnectivityStateAutoGenerated & {};

// @public
export type ActionType = string;

// @public
export type ActiveConnectionsNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "ActiveConnectionsNotInAllowedRange";
};

// @public (undocumented)
export type AdaptiveApplicationControlGroup = Resource & Location_2 & {
    enforcementMode?: EnforcementMode;
    protectionMode?: ProtectionMode;
    readonly configurationStatus?: ConfigurationStatus;
    readonly recommendationStatus?: RecommendationStatus;
    readonly issues?: AdaptiveApplicationControlIssueSummary[];
    readonly sourceSystem?: SourceSystem;
    vmRecommendations?: VmRecommendation[];
    pathRecommendations?: PathRecommendation[];
};

// @public
export interface AdaptiveApplicationControlGroups {
    // (undocumented)
    value?: AdaptiveApplicationControlGroup[];
}

// @public
export type AdaptiveApplicationControlIssue = string;

// @public
export interface AdaptiveApplicationControlIssueSummary {
    issue?: AdaptiveApplicationControlIssue;
    numberOfVms?: number;
}

// @public
export interface AdaptiveApplicationControls {
    delete(ascLocation: string, groupName: string, options?: AdaptiveApplicationControlsDeleteOptionalParams): Promise<void>;
    get(ascLocation: string, groupName: string, options?: AdaptiveApplicationControlsGetOptionalParams): Promise<AdaptiveApplicationControlsGetResponse>;
    list(options?: AdaptiveApplicationControlsListOptionalParams): Promise<AdaptiveApplicationControlsListResponse>;
    put(ascLocation: string, groupName: string, body: AdaptiveApplicationControlGroup, options?: AdaptiveApplicationControlsPutOptionalParams): Promise<AdaptiveApplicationControlsPutResponse>;
}

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

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

// @public
export type AdaptiveApplicationControlsGetResponse = AdaptiveApplicationControlGroup;

// @public
export interface AdaptiveApplicationControlsListOptionalParams extends coreClient.OperationOptions {
    includePathRecommendations?: boolean;
    summary?: boolean;
}

// @public
export type AdaptiveApplicationControlsListResponse = AdaptiveApplicationControlGroups;

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

// @public
export type AdaptiveApplicationControlsPutResponse = AdaptiveApplicationControlGroup;

// @public
export type AdaptiveNetworkHardening = Resource & {
    rules?: Rule[];
    rulesCalculationTime?: Date;
    effectiveNetworkSecurityGroups?: EffectiveNetworkSecurityGroups[];
};

// @public (undocumented)
export interface AdaptiveNetworkHardeningEnforceRequest {
    networkSecurityGroups: string[];
    rules: Rule[];
}

// @public
export interface AdaptiveNetworkHardenings {
    beginEnforce(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, body: AdaptiveNetworkHardeningEnforceRequest, options?: AdaptiveNetworkHardeningsEnforceOptionalParams): Promise<PollerLike<PollOperationState<void>, void>>;
    beginEnforceAndWait(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, body: AdaptiveNetworkHardeningEnforceRequest, options?: AdaptiveNetworkHardeningsEnforceOptionalParams): Promise<void>;
    get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, options?: AdaptiveNetworkHardeningsGetOptionalParams): Promise<AdaptiveNetworkHardeningsGetResponse>;
    listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: AdaptiveNetworkHardeningsListByExtendedResourceOptionalParams): PagedAsyncIterableIterator<AdaptiveNetworkHardening>;
}

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

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

// @public
export type AdaptiveNetworkHardeningsGetResponse = AdaptiveNetworkHardening;

// @public
export interface AdaptiveNetworkHardeningsList {
    nextLink?: string;
    value?: AdaptiveNetworkHardening[];
}

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

// @public
export type AdaptiveNetworkHardeningsListByExtendedResourceNextResponse = AdaptiveNetworkHardeningsList;

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

// @public
export type AdaptiveNetworkHardeningsListByExtendedResourceResponse = AdaptiveNetworkHardeningsList;

// @public
export interface AdditionalData {
    assessedResourceType: "SqlServerVulnerability" | "ContainerRegistryVulnerability" | "ServerVulnerabilityAssessment";
}

// @public (undocumented)
export type AdditionalDataUnion = AdditionalData | SqlServerVulnerabilityProperties | ContainerRegistryVulnerabilityProperties | ServerVulnerabilityProperties;

// @public
export type AdditionalWorkspaceDataType = string;

// @public
export interface AdditionalWorkspacesProperties {
    dataTypes?: AdditionalWorkspaceDataType[];
    type?: AdditionalWorkspaceType;
    workspace?: string;
}

// @public
export type AdditionalWorkspaceType = string;

// @public
export interface AdvancedThreatProtection {
    create(resourceId: string, advancedThreatProtectionSetting: AdvancedThreatProtectionSetting, options?: AdvancedThreatProtectionCreateOptionalParams): Promise<AdvancedThreatProtectionCreateResponse>;
    get(resourceId: string, options?: AdvancedThreatProtectionGetOptionalParams): Promise<AdvancedThreatProtectionGetResponse>;
}

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

// @public
export type AdvancedThreatProtectionCreateResponse = AdvancedThreatProtectionSetting;

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

// @public
export type AdvancedThreatProtectionGetResponse = AdvancedThreatProtectionSetting;

// @public
export type AdvancedThreatProtectionSetting = Resource & {
    isEnabled?: boolean;
};

// @public
export type Alert = Resource & {
    readonly alertType?: string;
    readonly systemAlertId?: string;
    readonly productComponentName?: string;
    readonly alertDisplayName?: string;
    readonly description?: string;
    readonly severity?: AlertSeverity;
    readonly intent?: Intent;
    readonly startTimeUtc?: Date;
    readonly endTimeUtc?: Date;
    readonly resourceIdentifiers?: ResourceIdentifierUnion[];
    readonly remediationSteps?: string[];
    readonly vendorName?: string;
    readonly status?: AlertStatus;
    readonly extendedLinks?: {
        [propertyName: string]: string;
    }[];
    readonly alertUri?: string;
    readonly timeGeneratedUtc?: Date;
    readonly productName?: string;
    readonly processingEndTimeUtc?: Date;
    readonly entities?: AlertEntity[];
    readonly isIncident?: boolean;
    readonly correlationKey?: string;
    extendedProperties?: {
        [propertyName: string]: string;
    };
    readonly compromisedEntity?: string;
};

// @public
export interface AlertEntity {
    [property: string]: any;
    readonly type?: string;
}

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

// @public
export type AlertNotifications = string;

// @public
export interface Alerts {
    getResourceGroupLevel(ascLocation: string, alertName: string, resourceGroupName: string, options?: AlertsGetResourceGroupLevelOptionalParams): Promise<AlertsGetResourceGroupLevelResponse>;
    getSubscriptionLevel(ascLocation: string, alertName: string, options?: AlertsGetSubscriptionLevelOptionalParams): Promise<AlertsGetSubscriptionLevelResponse>;
    list(options?: AlertsListOptionalParams): PagedAsyncIterableIterator<Alert>;
    listByResourceGroup(resourceGroupName: string, options?: AlertsListByResourceGroupOptionalParams): PagedAsyncIterableIterator<Alert>;
    listResourceGroupLevelByRegion(ascLocation: string, resourceGroupName: string, options?: AlertsListResourceGroupLevelByRegionOptionalParams): PagedAsyncIterableIterator<Alert>;
    listSubscriptionLevelByRegion(ascLocation: string, options?: AlertsListSubscriptionLevelByRegionOptionalParams): PagedAsyncIterableIterator<Alert>;
    simulate(ascLocation: string, alertSimulatorRequestBody: AlertSimulatorRequestBody, options?: AlertsSimulateOptionalParams): Promise<void>;
    updateResourceGroupLevelStateToActivate(ascLocation: string, alertName: string, resourceGroupName: string, options?: AlertsUpdateResourceGroupLevelStateToActivateOptionalParams): Promise<void>;
    updateResourceGroupLevelStateToDismiss(ascLocation: string, alertName: string, resourceGroupName: string, options?: AlertsUpdateResourceGroupLevelStateToDismissOptionalParams): Promise<void>;
    updateResourceGroupLevelStateToResolve(ascLocation: string, alertName: string, resourceGroupName: string, options?: AlertsUpdateResourceGroupLevelStateToResolveOptionalParams): Promise<void>;
    updateSubscriptionLevelStateToActivate(ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToActivateOptionalParams): Promise<void>;
    updateSubscriptionLevelStateToDismiss(ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToDismissOptionalParams): Promise<void>;
    updateSubscriptionLevelStateToResolve(ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToResolveOptionalParams): Promise<void>;
}

// @public
export type AlertSeverity = string;

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

// @public
export type AlertsGetResourceGroupLevelResponse = Alert;

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

// @public
export type AlertsGetSubscriptionLevelResponse = Alert;

// @public
export type AlertSimulatorBundlesRequestProperties = AlertSimulatorRequestProperties & {
    kind: "Bundles";
    bundles?: BundleType[];
};

// @public
export interface AlertSimulatorRequestBody {
    properties?: AlertSimulatorRequestPropertiesUnion;
}

// @public
export interface AlertSimulatorRequestProperties {
    [property: string]: any;
    kind: "Bundles";
}

// @public (undocumented)
export type AlertSimulatorRequestPropertiesUnion = AlertSimulatorRequestProperties | AlertSimulatorBundlesRequestProperties;

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

// @public
export type AlertsListByResourceGroupNextResponse = AlertList;

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

// @public
export type AlertsListByResourceGroupResponse = AlertList;

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

// @public
export type AlertsListNextResponse = AlertList;

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

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

// @public
export type AlertsListResourceGroupLevelByRegionNextResponse = AlertList;

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

// @public
export type AlertsListResourceGroupLevelByRegionResponse = AlertList;

// @public
export type AlertsListResponse = AlertList;

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

// @public
export type AlertsListSubscriptionLevelByRegionNextResponse = AlertList;

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

// @public
export type AlertsListSubscriptionLevelByRegionResponse = AlertList;

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

// @public
export type AlertsSuppressionRule = Resource & {
    alertType?: string;
    readonly lastModifiedUtc?: Date;
    expirationDateUtc?: Date;
    reason?: string;
    state?: RuleState;
    comment?: string;
    suppressionAlertsScope?: SuppressionAlertsScope;
};

// @public
export interface AlertsSuppressionRules {
    delete(alertsSuppressionRuleName: string, options?: AlertsSuppressionRulesDeleteOptionalParams): Promise<void>;
    get(alertsSuppressionRuleName: string, options?: AlertsSuppressionRulesGetOptionalParams): Promise<AlertsSuppressionRulesGetResponse>;
    list(options?: AlertsSuppressionRulesListOptionalParams): PagedAsyncIterableIterator<AlertsSuppressionRule>;
    update(alertsSuppressionRuleName: string, alertsSuppressionRule: AlertsSuppressionRule, options?: AlertsSuppressionRulesUpdateOptionalParams): Promise<AlertsSuppressionRulesUpdateResponse>;
}

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

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

// @public
export type AlertsSuppressionRulesGetResponse = AlertsSuppressionRule;

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

// @public
export interface AlertsSuppressionRulesListNextOptionalParams extends coreClient.OperationOptions {
    alertType?: string;
}

// @public
export type AlertsSuppressionRulesListNextResponse = AlertsSuppressionRulesList;

// @public
export interface AlertsSuppressionRulesListOptionalParams extends coreClient.OperationOptions {
    alertType?: string;
}

// @public
export type AlertsSuppressionRulesListResponse = AlertsSuppressionRulesList;

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

// @public
export type AlertsSuppressionRulesUpdateResponse = AlertsSuppressionRule;

// @public
export type AlertStatus = string;

// @public
export type AlertsToAdmins = string;

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

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

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

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

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

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

// @public
export type AlertSyncSettings = Setting & {
    enabled?: boolean;
};

// @public
export interface AllowedConnections {
    get(resourceGroupName: string, ascLocation: string, connectionType: ConnectionType_2, options?: AllowedConnectionsGetOptionalParams): Promise<AllowedConnectionsGetResponse>;
    list(options?: AllowedConnectionsListOptionalParams): PagedAsyncIterableIterator<AllowedConnectionsResource>;
    listByHomeRegion(ascLocation: string, options?: AllowedConnectionsListByHomeRegionOptionalParams): PagedAsyncIterableIterator<AllowedConnectionsResource>;
}

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

// @public
export type AllowedConnectionsGetResponse = AllowedConnectionsResource;

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

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

// @public
export type AllowedConnectionsListByHomeRegionNextResponse = AllowedConnectionsList;

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

// @public
export type AllowedConnectionsListByHomeRegionResponse = AllowedConnectionsList;

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

// @public
export type AllowedConnectionsListNextResponse = AllowedConnectionsList;

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

// @public
export type AllowedConnectionsListResponse = AllowedConnectionsList;

// @public
export type AllowedConnectionsResource = Resource & Location_2 & {
    readonly calculatedDateTime?: Date;
    readonly connectableResources?: ConnectableResource[];
};

// @public
export type AllowlistCustomAlertRule = ListCustomAlertRule & {
    ruleType: "AllowlistCustomAlertRule" | "ConnectionToIpNotAllowed" | "ConnectionFromIpNotAllowed" | "LocalUserNotAllowed" | "ProcessNotAllowed";
    allowlistValues: string[];
};

// @public (undocumented)
export type AllowlistCustomAlertRuleUnion = AllowlistCustomAlertRule | ConnectionToIpNotAllowed | ConnectionFromIpNotAllowed | LocalUserNotAllowed | ProcessNotAllowed;

// @public
export type AmqpC2DMessagesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "AmqpC2DMessagesNotInAllowedRange";
};

// @public
export type AmqpC2DRejectedMessagesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "AmqpC2DRejectedMessagesNotInAllowedRange";
};

// @public
export type AmqpD2CMessagesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "AmqpD2CMessagesNotInAllowedRange";
};

// @public
export type AscLocation = Resource & {
    properties?: Record<string, unknown>;
};

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

// @public
export type AssessedResourceType = string;

// @public
export interface AssessmentLinks {
    readonly azurePortalUri?: string;
}

// @public
export interface Assessments {
    createOrUpdate(resourceId: string, assessmentName: string, assessment: SecurityAssessment, options?: AssessmentsCreateOrUpdateOptionalParams): Promise<AssessmentsCreateOrUpdateResponse>;
    delete(resourceId: string, assessmentName: string, options?: AssessmentsDeleteOptionalParams): Promise<void>;
    get(resourceId: string, assessmentName: string, options?: AssessmentsGetOptionalParams): Promise<AssessmentsGetResponse>;
    list(scope: string, options?: AssessmentsListOptionalParams): PagedAsyncIterableIterator<SecurityAssessmentResponse>;
}

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

// @public
export type AssessmentsCreateOrUpdateResponse = SecurityAssessmentResponse;

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

// @public
export interface AssessmentsGetOptionalParams extends coreClient.OperationOptions {
    expand?: ExpandEnum;
}

// @public
export type AssessmentsGetResponse = SecurityAssessmentResponse;

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

// @public
export type AssessmentsListNextResponse = SecurityAssessmentList;

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

// @public
export type AssessmentsListResponse = SecurityAssessmentList;

// @public
export interface AssessmentsMetadata {
    createInSubscription(assessmentMetadataName: string, assessmentMetadata: SecurityAssessmentMetadataResponse, options?: AssessmentsMetadataCreateInSubscriptionOptionalParams): Promise<AssessmentsMetadataCreateInSubscriptionResponse>;
    deleteInSubscription(assessmentMetadataName: string, options?: AssessmentsMetadataDeleteInSubscriptionOptionalParams): Promise<void>;
    get(assessmentMetadataName: string, options?: AssessmentsMetadataGetOptionalParams): Promise<AssessmentsMetadataGetResponse>;
    getInSubscription(assessmentMetadataName: string, options?: AssessmentsMetadataGetInSubscriptionOptionalParams): Promise<AssessmentsMetadataGetInSubscriptionResponse>;
    list(options?: AssessmentsMetadataListOptionalParams): PagedAsyncIterableIterator<SecurityAssessmentMetadataResponse>;
    listBySubscription(options?: AssessmentsMetadataListBySubscriptionOptionalParams): PagedAsyncIterableIterator<SecurityAssessmentMetadataResponse>;
}

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

// @public
export type AssessmentsMetadataCreateInSubscriptionResponse = SecurityAssessmentMetadataResponse;

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

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

// @public
export type AssessmentsMetadataGetInSubscriptionResponse = SecurityAssessmentMetadataResponse;

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

// @public
export type AssessmentsMetadataGetResponse = SecurityAssessmentMetadataResponse;

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

// @public
export type AssessmentsMetadataListBySubscriptionNextResponse = SecurityAssessmentMetadataResponseList;

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

// @public
export type AssessmentsMetadataListBySubscriptionResponse = SecurityAssessmentMetadataResponseList;

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

// @public
export type AssessmentsMetadataListNextResponse = SecurityAssessmentMetadataResponseList;

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

// @public
export type AssessmentsMetadataListResponse = SecurityAssessmentMetadataResponseList;

// @public
export interface AssessmentStatus {
    cause?: string;
    code: AssessmentStatusCode;
    description?: string;
}

// @public
export type AssessmentStatusCode = string;

// @public
export type AssessmentStatusResponse = AssessmentStatus & {
    readonly firstEvaluationDate?: Date;
    readonly statusChangeDate?: Date;
};

// @public
export type AssessmentType = string;

// @public
export type AtaExternalSecuritySolution = ExternalSecuritySolution & {
    properties?: AtaSolutionProperties;
};

// @public
export type AtaSolutionProperties = ExternalSecuritySolutionProperties & {
    lastEventReceived?: string;
};

// @public
export interface AuthenticationDetailsProperties {
    readonly authenticationProvisioningState?: AuthenticationProvisioningState;
    authenticationType: "awsCreds" | "awsAssumeRole" | "gcpCredentials";
    readonly grantedPermissions?: PermissionProperty[];
}

// @public (undocumented)
export type AuthenticationDetailsPropertiesUnion = AuthenticationDetailsProperties | AwsCredsAuthenticationDetailsProperties | AwAssumeRoleAuthenticationDetailsProperties | GcpCredentialsDetailsProperties;

// @public
export type AuthenticationProvisioningState = string;

// @public
export type AuthenticationType = string;

// @public
export type Automation = TrackedResource & {
    description?: string;
    isEnabled?: boolean;
    scopes?: AutomationScope[];
    sources?: AutomationSource[];
    actions?: AutomationActionUnion[];
};

// @public
export interface AutomationAction {
    actionType: "LogicApp" | "EventHub" | "Workspace";
}

// @public
export type AutomationActionEventHub = AutomationAction & {
    actionType: "EventHub";
    eventHubResourceId?: string;
    readonly sasPolicyName?: string;
    connectionString?: string;
};

// @public
export type AutomationActionLogicApp = AutomationAction & {
    actionType: "LogicApp";
    logicAppResourceId?: string;
    uri?: string;
};

// @public (undocumented)
export type AutomationActionUnion = AutomationAction | AutomationActionLogicApp | AutomationActionEventHub | AutomationActionWorkspace;

// @public
export type AutomationActionWorkspace = AutomationAction & {
    actionType: "Workspace";
    workspaceResourceId?: string;
};

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

// @public
export interface AutomationRuleSet {
    // (undocumented)
    rules?: AutomationTriggeringRule[];
}

// @public
export interface Automations {
    createOrUpdate(resourceGroupName: string, automationName: string, automation: Automation, options?: AutomationsCreateOrUpdateOptionalParams): Promise<AutomationsCreateOrUpdateResponse>;
    delete(resourceGroupName: string, automationName: string, options?: AutomationsDeleteOptionalParams): Promise<void>;
    get(resourceGroupName: string, automationName: string, options?: AutomationsGetOptionalParams): Promise<AutomationsGetResponse>;
    list(options?: AutomationsListOptionalParams): PagedAsyncIterableIterator<Automation>;
    listByResourceGroup(resourceGroupName: string, options?: AutomationsListByResourceGroupOptionalParams): PagedAsyncIterableIterator<Automation>;
    validate(resourceGroupName: string, automationName: string, automation: Automation, options?: AutomationsValidateOptionalParams): Promise<AutomationsValidateResponse>;
}

// @public
export interface AutomationScope {
    description?: string;
    scopePath?: string;
}

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

// @public
export type AutomationsCreateOrUpdateResponse = Automation;

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

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

// @public
export type AutomationsGetResponse = Automation;

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

// @public
export type AutomationsListByResourceGroupNextResponse = AutomationList;

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

// @public
export type AutomationsListByResourceGroupResponse = AutomationList;

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

// @public
export type AutomationsListNextResponse = AutomationList;

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

// @public
export type AutomationsListResponse = AutomationList;

// @public
export interface AutomationSource {
    eventSource?: EventSource_2;
    ruleSets?: AutomationRuleSet[];
}

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

// @public
export type AutomationsValidateResponse = AutomationValidationStatus;

// @public
export interface AutomationTriggeringRule {
    expectedValue?: string;
    operator?: Operator;
    propertyJPath?: string;
    propertyType?: PropertyType;
}

// @public
export interface AutomationValidationStatus {
    isValid?: boolean;
    message?: string;
}

// @public
export type AutoProvision = string;

// @public
export type AutoProvisioningSetting = Resource & {
    autoProvision?: AutoProvision;
};

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

// @public
export interface AutoProvisioningSettings {
    create(settingName: string, setting: AutoProvisioningSetting, options?: AutoProvisioningSettingsCreateOptionalParams): Promise<AutoProvisioningSettingsCreateResponse>;
    get(settingName: string, options?: AutoProvisioningSettingsGetOptionalParams): Promise<AutoProvisioningSettingsGetResponse>;
    list(options?: AutoProvisioningSettingsListOptionalParams): PagedAsyncIterableIterator<AutoProvisioningSetting>;
}

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

// @public
export type AutoProvisioningSettingsCreateResponse = AutoProvisioningSetting;

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

// @public
export type AutoProvisioningSettingsGetResponse = AutoProvisioningSetting;

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

// @public
export type AutoProvisioningSettingsListNextResponse = AutoProvisioningSettingList;

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

// @public
export type AutoProvisioningSettingsListResponse = AutoProvisioningSettingList;

// @public
export type AwAssumeRoleAuthenticationDetailsProperties = AuthenticationDetailsProperties & {
    authenticationType: "awsAssumeRole";
    readonly accountId?: string;
    awsAssumeRoleArn: string;
    awsExternalId: string;
};

// @public
export type AwsCredsAuthenticationDetailsProperties = AuthenticationDetailsProperties & {
    authenticationType: "awsCreds";
    readonly accountId?: string;
    awsAccessKeyId: string;
    awsSecretAccessKey: string;
};

// @public
export type AzureResourceDetails = ResourceDetails & {
    source: "Azure";
    readonly id?: string;
};

// @public
export type AzureResourceIdentifier = ResourceIdentifier & {
    type: "AzureResource";
    readonly azureResourceId?: string;
};

// @public
export interface AzureResourceLink {
    readonly id?: string;
}

// @public
export interface AzureTrackedResourceLocation {
    location?: string;
}

// @public
export interface Baseline {
    expectedResults?: string[][];
    updatedTime?: Date;
}

// @public
export interface BaselineAdjustedResult {
    baseline?: Baseline;
    resultsNotInBaseline?: string[][];
    resultsOnlyInBaseline?: string[][];
    status?: RuleStatus;
}

// @public
export interface BenchmarkReference {
    benchmark?: string;
    reference?: string;
}

// @public
export type BundleType = string;

// @public
export type Categories = string;

// @public
export type CefExternalSecuritySolution = ExternalSecuritySolution & {
    properties?: CefSolutionProperties;
};

// @public
export type CefSolutionProperties = ExternalSecuritySolutionProperties & {
    hostname?: string;
    agent?: string;
    lastEventReceived?: string;
};

// @public
export interface CloudError {
    readonly additionalInfo?: ErrorAdditionalInfo[];
    readonly code?: string;
    readonly details?: CloudErrorBody[];
    readonly message?: string;
    readonly target?: string;
}

// @public
export interface CloudErrorBody {
    readonly additionalInfo?: ErrorAdditionalInfo[];
    readonly code?: string;
    readonly details?: CloudErrorBody[];
    readonly message?: string;
    readonly target?: string;
}

// @public
export type CloudName = string;

// @public
export interface CloudOffering {
    readonly description?: string;
    offeringType: "CspmMonitorAws" | "DefenderForContainersAws" | "DefenderForServersAws" | "InformationProtectionAws";
}

// @public (undocumented)
export type CloudOfferingUnion = CloudOffering | CspmMonitorAwsOffering | DefenderForContainersAwsOffering | DefenderForServersAwsOffering | InformationProtectionAwsOffering;

// @public
export type Compliance = Resource & {
    readonly assessmentTimestampUtcDate?: Date;
    readonly resourceCount?: number;
    readonly assessmentResult?: ComplianceSegment[];
};

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

// @public
export type ComplianceResult = Resource & {
    readonly resourceStatus?: ResourceStatus;
};

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

// @public
export interface ComplianceResults {
    get(resourceId: string, complianceResultName: string, options?: ComplianceResultsGetOptionalParams): Promise<ComplianceResultsGetResponse>;
    list(scope: string, options?: ComplianceResultsListOptionalParams): PagedAsyncIterableIterator<ComplianceResult>;
}

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

// @public
export type ComplianceResultsGetResponse = ComplianceResult;

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

// @public
export type ComplianceResultsListNextResponse = ComplianceResultList;

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

// @public
export type ComplianceResultsListResponse = ComplianceResultList;

// @public
export interface Compliances {
    get(scope: string, complianceName: string, options?: CompliancesGetOptionalParams): Promise<CompliancesGetResponse>;
    list(scope: string, options?: CompliancesListOptionalParams): PagedAsyncIterableIterator<Compliance>;
}

// @public
export interface ComplianceSegment {
    readonly percentage?: number;
    readonly segmentType?: string;
}

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

// @public
export type CompliancesGetResponse = Compliance;

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

// @public
export type CompliancesListNextResponse = ComplianceList;

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

// @public
export type CompliancesListResponse = ComplianceList;

// @public
export type ConfigurationStatus = string;

// @public
export interface ConnectableResource {
    readonly id?: string;
    readonly inboundConnectedResources?: ConnectedResource[];
    readonly outboundConnectedResources?: ConnectedResource[];
}

// @public
export interface ConnectedResource {
    readonly connectedResourceId?: string;
    readonly tcpPorts?: string;
    readonly udpPorts?: string;
}

// @public
export interface ConnectedWorkspace {
    id?: string;
}

// @public
export type ConnectionFromIpNotAllowed = AllowlistCustomAlertRule & {
    ruleType: "ConnectionFromIpNotAllowed";
};

// @public
export interface ConnectionStrings {
    value: IngestionConnectionString[];
}

// @public
export type ConnectionToIpNotAllowed = AllowlistCustomAlertRule & {
    ruleType: "ConnectionToIpNotAllowed";
};

// @public
type ConnectionType_2 = string;
export { ConnectionType_2 as ConnectionType }

// @public
export interface Connectors {
    createOrUpdate(connectorName: string, connectorSetting: ConnectorSetting, options?: ConnectorsCreateOrUpdateOptionalParams): Promise<ConnectorsCreateOrUpdateResponse>;
    delete(connectorName: string, options?: ConnectorsDeleteOptionalParams): Promise<void>;
    get(connectorName: string, options?: ConnectorsGetOptionalParams): Promise<ConnectorsGetResponse>;
    list(options?: ConnectorsListOptionalParams): PagedAsyncIterableIterator<ConnectorSetting>;
}

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

// @public
export type ConnectorsCreateOrUpdateResponse = ConnectorSetting;

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

// @public
export type ConnectorSetting = Resource & {
    hybridComputeSettings?: HybridComputeSettingsProperties;
    authenticationDetails?: AuthenticationDetailsPropertiesUnion;
};

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

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

// @public
export type ConnectorsGetResponse = ConnectorSetting;

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

// @public
export type ConnectorsListNextResponse = ConnectorSettingList;

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

// @public
export type ConnectorsListResponse = ConnectorSettingList;

// @public
export type ContainerRegistryVulnerabilityProperties = AdditionalData & {
    assessedResourceType: "ContainerRegistryVulnerability";
    readonly type?: string;
    readonly cvss?: {
        [propertyName: string]: Cvss;
    };
    readonly patchable?: boolean;
    readonly cve?: Cve[];
    readonly publishedTime?: Date;
    readonly vendorReferences?: VendorReference[];
    readonly repositoryName?: string;
    readonly imageDigest?: string;
};

// @public
export type ControlType = string;

// @public
export type CreatedByType = string;

// @public
export type CspmMonitorAwsOffering = CloudOffering & {
    offeringType: "CspmMonitorAws";
    nativeCloudConnection?: CspmMonitorAwsOfferingNativeCloudConnection;
};

// @public
export interface CspmMonitorAwsOfferingNativeCloudConnection {
    cloudRoleArn?: string;
}

// @public
export interface CustomAlertRule {
    readonly description?: string;
    readonly displayName?: string;
    isEnabled: boolean;
    ruleType: "ThresholdCustomAlertRule" | "TimeWindowCustomAlertRule" | "ListCustomAlertRule" | "AllowlistCustomAlertRule" | "DenylistCustomAlertRule" | "ConnectionToIpNotAllowed" | "ConnectionFromIpNotAllowed" | "LocalUserNotAllowed" | "ProcessNotAllowed" | "ActiveConnectionsNotInAllowedRange" | "AmqpC2DMessagesNotInAllowedRange" | "MqttC2DMessagesNotInAllowedRange" | "HttpC2DMessagesNotInAllowedRange" | "AmqpC2DRejectedMessagesNotInAllowedRange" | "MqttC2DRejectedMessagesNotInAllowedRange" | "HttpC2DRejectedMessagesNotInAllowedRange" | "AmqpD2CMessagesNotInAllowedRange" | "MqttD2CMessagesNotInAllowedRange" | "HttpD2CMessagesNotInAllowedRange" | "DirectMethodInvokesNotInAllowedRange" | "FailedLocalLoginsNotInAllowedRange" | "FileUploadsNotInAllowedRange" | "QueuePurgesNotInAllowedRange" | "TwinUpdatesNotInAllowedRange" | "UnauthorizedOperationsNotInAllowedRange";
}

// @public (undocumented)
export type CustomAlertRuleUnion = CustomAlertRule | ThresholdCustomAlertRuleUnion | ListCustomAlertRuleUnion;

// @public
export type CustomAssessmentAutomation = Resource & {
    readonly systemData?: SystemData;
    compressedQuery?: string;
    supportedCloud?: SupportedCloudEnum;
    severity?: SeverityEnum;
    displayName?: string;
    description?: string;
    remediationDescription?: string;
    assessmentKey?: string;
};

// @public
export type CustomAssessmentAutomationRequest = Resource & {
    compressedQuery?: string;
    supportedCloud?: SupportedCloudEnum;
    severity?: SeverityEnum;
    displayName?: string;
    description?: string;
    remediationDescription?: string;
};

// @public
export interface CustomAssessmentAutomations {
    create(resourceGroupName: string, customAssessmentAutomationName: string, customAssessmentAutomationBody: CustomAssessmentAutomationRequest, options?: CustomAssessmentAutomationsCreateOptionalParams): Promise<CustomAssessmentAutomationsCreateResponse>;
    delete(resourceGroupName: string, customAssessmentAutomationName: string, options?: CustomAssessmentAutomationsDeleteOptionalParams): Promise<void>;
    get(resourceGroupName: string, customAssessmentAutomationName: string, options?: CustomAssessmentAutomationsGetOptionalParams): Promise<CustomAssessmentAutomationsGetResponse>;
    listByResourceGroup(resourceGroupName: string, options?: CustomAssessmentAutomationsListByResourceGroupOptionalParams): PagedAsyncIterableIterator<CustomAssessmentAutomation>;
    listBySubscription(options?: CustomAssessmentAutomationsListBySubscriptionOptionalParams): PagedAsyncIterableIterator<CustomAssessmentAutomation>;
}

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

// @public
export type CustomAssessmentAutomationsCreateResponse = CustomAssessmentAutomation;

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

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

// @public
export type CustomAssessmentAutomationsGetResponse = CustomAssessmentAutomation;

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

// @public
export type CustomAssessmentAutomationsListByResourceGroupNextResponse = CustomAssessmentAutomationsListResult;

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

// @public
export type CustomAssessmentAutomationsListByResourceGroupResponse = CustomAssessmentAutomationsListResult;

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

// @public
export type CustomAssessmentAutomationsListBySubscriptionNextResponse = CustomAssessmentAutomationsListResult;

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

// @public
export type CustomAssessmentAutomationsListBySubscriptionResponse = CustomAssessmentAutomationsListResult;

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

// @public
export type CustomEntityStoreAssignment = Resource & {
    readonly systemData?: SystemData;
    principal?: string;
    entityStoreDatabaseLink?: string;
};

// @public
export interface CustomEntityStoreAssignmentRequest {
    principal?: string;
}

// @public
export interface CustomEntityStoreAssignments {
    create(resourceGroupName: string, customEntityStoreAssignmentName: string, customEntityStoreAssignmentRequestBody: CustomEntityStoreAssignmentRequest, options?: CustomEntityStoreAssignmentsCreateOptionalParams): Promise<CustomEntityStoreAssignmentsCreateResponse>;
    delete(resourceGroupName: string, customEntityStoreAssignmentName: string, options?: CustomEntityStoreAssignmentsDeleteOptionalParams): Promise<void>;
    get(resourceGroupName: string, customEntityStoreAssignmentName: string, options?: CustomEntityStoreAssignmentsGetOptionalParams): Promise<CustomEntityStoreAssignmentsGetResponse>;
    listByResourceGroup(resourceGroupName: string, options?: CustomEntityStoreAssignmentsListByResourceGroupOptionalParams): PagedAsyncIterableIterator<CustomEntityStoreAssignment>;
    listBySubscription(options?: CustomEntityStoreAssignmentsListBySubscriptionOptionalParams): PagedAsyncIterableIterator<CustomEntityStoreAssignment>;
}

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

// @public
export type CustomEntityStoreAssignmentsCreateResponse = CustomEntityStoreAssignment;

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

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

// @public
export type CustomEntityStoreAssignmentsGetResponse = CustomEntityStoreAssignment;

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

// @public
export type CustomEntityStoreAssignmentsListByResourceGroupNextResponse = CustomEntityStoreAssignmentsListResult;

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

// @public
export type CustomEntityStoreAssignmentsListByResourceGroupResponse = CustomEntityStoreAssignmentsListResult;

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

// @public
export type CustomEntityStoreAssignmentsListBySubscriptionNextResponse = CustomEntityStoreAssignmentsListResult;

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

// @public
export type CustomEntityStoreAssignmentsListBySubscriptionResponse = CustomEntityStoreAssignmentsListResult;

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

// @public
export interface Cve {
    readonly link?: string;
    readonly title?: string;
}

// @public
export interface Cvss {
    readonly base?: number;
}

// @public
export type DataExportSettings = Setting & {
    enabled?: boolean;
};

// @public
export type DataSource = string;

// @public
export type DefenderForContainersAwsOffering = CloudOffering & {
    offeringType: "DefenderForContainersAws";
    kubernetesService?: DefenderForContainersAwsOfferingKubernetesService;
    kubernetesScubaReader?: DefenderForContainersAwsOfferingKubernetesScubaReader;
    cloudWatchToKinesis?: DefenderForContainersAwsOfferingCloudWatchToKinesis;
    kinesisToS3?: DefenderForContainersAwsOfferingKinesisToS3;
};

// @public
export interface DefenderForContainersAwsOfferingCloudWatchToKinesis {
    cloudRoleArn?: string;
}

// @public
export interface DefenderForContainersAwsOfferingKinesisToS3 {
    cloudRoleArn?: string;
}

// @public
export interface DefenderForContainersAwsOfferingKubernetesScubaReader {
    cloudRoleArn?: string;
}

// @public
export interface DefenderForContainersAwsOfferingKubernetesService {
    cloudRoleArn?: string;
}

// @public
export type DefenderForServersAwsOffering = CloudOffering & {
    offeringType: "DefenderForServersAws";
    defenderForServers?: DefenderForServersAwsOfferingDefenderForServers;
    arcAutoProvisioning?: DefenderForServersAwsOfferingArcAutoProvisioning;
};

// @public
export interface DefenderForServersAwsOfferingArcAutoProvisioning {
    enabled?: boolean;
    servicePrincipalSecretMetadata?: DefenderForServersAwsOfferingArcAutoProvisioningServicePrincipalSecretMetadata;
}

// @public
export interface DefenderForServersAwsOfferingArcAutoProvisioningServicePrincipalSecretMetadata {
    expiryDate?: string;
    parameterNameInStore?: string;
    parameterStoreRegion?: string;
}

// @public
export interface DefenderForServersAwsOfferingDefenderForServers {
    cloudRoleArn?: string;
}

// @public
export type DenylistCustomAlertRule = ListCustomAlertRule & {
    ruleType: "DenylistCustomAlertRule";
    denylistValues: string[];
};

// @public
export type DeviceSecurityGroup = Resource & {
    thresholdRules?: ThresholdCustomAlertRuleUnion[];
    timeWindowRules?: TimeWindowCustomAlertRuleUnion[];
    allowlistRules?: AllowlistCustomAlertRuleUnion[];
    denylistRules?: DenylistCustomAlertRule[];
};

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

// @public
export interface DeviceSecurityGroups {
    createOrUpdate(resourceId: string, deviceSecurityGroupName: string, deviceSecurityGroup: DeviceSecurityGroup, options?: DeviceSecurityGroupsCreateOrUpdateOptionalParams): Promise<DeviceSecurityGroupsCreateOrUpdateResponse>;
    delete(resourceId: string, deviceSecurityGroupName: string, options?: DeviceSecurityGroupsDeleteOptionalParams): Promise<void>;
    get(resourceId: string, deviceSecurityGroupName: string, options?: DeviceSecurityGroupsGetOptionalParams): Promise<DeviceSecurityGroupsGetResponse>;
    list(resourceId: string, options?: DeviceSecurityGroupsListOptionalParams): PagedAsyncIterableIterator<DeviceSecurityGroup>;
}

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

// @public
export type DeviceSecurityGroupsCreateOrUpdateResponse = DeviceSecurityGroup;

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

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

// @public
export type DeviceSecurityGroupsGetResponse = DeviceSecurityGroup;

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

// @public
export type DeviceSecurityGroupsListNextResponse = DeviceSecurityGroupList;

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

// @public
export type DeviceSecurityGroupsListResponse = DeviceSecurityGroupList;

// @public
export type Direction = string;

// @public
export type DirectMethodInvokesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "DirectMethodInvokesNotInAllowedRange";
};

// @public (undocumented)
export type DiscoveredSecuritySolution = Resource & Location_2 & {
    securityFamily: SecurityFamily;
    offer: string;
    publisher: string;
    sku: string;
};

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

// @public
export interface DiscoveredSecuritySolutions {
    get(resourceGroupName: string, ascLocation: string, discoveredSecuritySolutionName: string, options?: DiscoveredSecuritySolutionsGetOptionalParams): Promise<DiscoveredSecuritySolutionsGetResponse>;
    list(options?: DiscoveredSecuritySolutionsListOptionalParams): PagedAsyncIterableIterator<DiscoveredSecuritySolution>;
    listByHomeRegion(ascLocation: string, options?: DiscoveredSecuritySolutionsListByHomeRegionOptionalParams): PagedAsyncIterableIterator<DiscoveredSecuritySolution>;
}

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

// @public
export type DiscoveredSecuritySolutionsGetResponse = DiscoveredSecuritySolution;

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

// @public
export type DiscoveredSecuritySolutionsListByHomeRegionNextResponse = DiscoveredSecuritySolutionList;

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

// @public
export type DiscoveredSecuritySolutionsListByHomeRegionResponse = DiscoveredSecuritySolutionList;

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

// @public
export type DiscoveredSecuritySolutionsListNextResponse = DiscoveredSecuritySolutionList;

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

// @public
export type DiscoveredSecuritySolutionsListResponse = DiscoveredSecuritySolutionList;

// @public
export interface EffectiveNetworkSecurityGroups {
    networkInterface?: string;
    networkSecurityGroups?: string[];
}

// @public
export type EndOfSupportStatus = string;

// @public
export type EnforcementMode = string;

// @public
export type EnforcementSupport = string;

// @public
export interface ErrorAdditionalInfo {
    readonly info?: Record<string, unknown>;
    readonly type?: string;
}

// @public
export interface ETag {
    etag?: string;
}

// @public
type EventSource_2 = string;
export { EventSource_2 as EventSource }

// @public
export type ExpandControlsEnum = string;

// @public
export type ExpandEnum = string;

// @public
export type ExportData = string;

// @public
export type ExternalSecuritySolution = Resource & ExternalSecuritySolutionKindAutoGenerated & Location_2 & {};

// @public
export type ExternalSecuritySolutionKind = string;

// @public
export interface ExternalSecuritySolutionKindAutoGenerated {
    kind?: ExternalSecuritySolutionKind;
}

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

// @public
export interface ExternalSecuritySolutionProperties {
    [property: string]: any;
    // (undocumented)
    deviceType?: string;
    // (undocumented)
    deviceVendor?: string;
    workspace?: ConnectedWorkspace;
}

// @public
export interface ExternalSecuritySolutions {
    get(resourceGroupName: string, ascLocation: string, externalSecuritySolutionsName: string, options?: ExternalSecuritySolutionsGetOptionalParams): Promise<ExternalSecuritySolutionsGetResponse>;
    list(options?: ExternalSecuritySolutionsListOptionalParams): PagedAsyncIterableIterator<ExternalSecuritySolutionUnion>;
    listByHomeRegion(ascLocation: string, options?: ExternalSecuritySolutionsListByHomeRegionOptionalParams): PagedAsyncIterableIterator<ExternalSecuritySolutionUnion>;
}

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

// @public
export type ExternalSecuritySolutionsGetResponse = ExternalSecuritySolutionUnion;

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

// @public
export type ExternalSecuritySolutionsListByHomeRegionNextResponse = ExternalSecuritySolutionList;

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

// @public
export type ExternalSecuritySolutionsListByHomeRegionResponse = ExternalSecuritySolutionList;

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

// @public
export type ExternalSecuritySolutionsListNextResponse = ExternalSecuritySolutionList;

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

// @public
export type ExternalSecuritySolutionsListResponse = ExternalSecuritySolutionList;

// @public (undocumented)
export type ExternalSecuritySolutionUnion = ExternalSecuritySolution | CefExternalSecuritySolution | AtaExternalSecuritySolution | AadExternalSecuritySolution;

// @public
export type FailedLocalLoginsNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "FailedLocalLoginsNotInAllowedRange";
};

// @public
export type FileType = string;

// @public
export type FileUploadsNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "FileUploadsNotInAllowedRange";
};

// @public
export type GcpCredentialsDetailsProperties = AuthenticationDetailsProperties & {
    authenticationType: "gcpCredentials";
    organizationId: string;
    type: string;
    projectId: string;
    privateKeyId: string;
    privateKey: string;
    clientEmail: string;
    clientId: string;
    authUri: string;
    tokenUri: string;
    authProviderX509CertUrl: string;
    clientX509CertUrl: string;
};

// @public
export type HttpC2DMessagesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "HttpC2DMessagesNotInAllowedRange";
};

// @public
export type HttpC2DRejectedMessagesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "HttpC2DRejectedMessagesNotInAllowedRange";
};

// @public
export type HttpD2CMessagesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "HttpD2CMessagesNotInAllowedRange";
};

// @public
export type HybridComputeProvisioningState = string;

// @public
export interface HybridComputeSettingsProperties {
    autoProvision: AutoProvision;
    readonly hybridComputeProvisioningState?: HybridComputeProvisioningState;
    proxyServer?: ProxyServerProperties;
    region?: string;
    resourceGroupName?: string;
    servicePrincipal?: ServicePrincipalProperties;
}

// @public
export type ImplementationEffort = string;

// @public
export type InformationProtectionAwsOffering = CloudOffering & {
    offeringType: "InformationProtectionAws";
    informationProtection?: InformationProtectionAwsOfferingInformationProtection;
};

// @public
export interface InformationProtectionAwsOfferingInformationProtection {
    cloudRoleArn?: string;
}

// @public
export interface InformationProtectionKeyword {
    canBeNumeric?: boolean;
    custom?: boolean;
    excluded?: boolean;
    pattern?: string;
}

// @public
export interface InformationProtectionPolicies {
    createOrUpdate(scope: string, informationProtectionPolicyName: InformationProtectionPolicyName, informationProtectionPolicy: InformationProtectionPolicy, options?: InformationProtectionPoliciesCreateOrUpdateOptionalParams): Promise<InformationProtectionPoliciesCreateOrUpdateResponse>;
    get(scope: string, informationProtectionPolicyName: InformationProtectionPolicyName, options?: InformationProtectionPoliciesGetOptionalParams): Promise<InformationProtectionPoliciesGetResponse>;
    list(scope: string, options?: InformationProtectionPoliciesListOptionalParams): PagedAsyncIterableIterator<InformationProtectionPolicy>;
}

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

// @public
export type InformationProtectionPoliciesCreateOrUpdateResponse = InformationProtectionPolicy;

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

// @public
export type InformationProtectionPoliciesGetResponse = InformationProtectionPolicy;

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

// @public
export type InformationProtectionPoliciesListNextResponse = InformationProtectionPolicyList;

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

// @public
export type InformationProtectionPoliciesListResponse = InformationProtectionPolicyList;

// @public
export type InformationProtectionPolicy = Resource & {
    readonly lastModifiedUtc?: Date;
    readonly version?: string;
    labels?: {
        [propertyName: string]: SensitivityLabel;
    };
    informationTypes?: {
        [propertyName: string]: InformationType;
    };
};

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

// @public
export type InformationProtectionPolicyName = string;

// @public
export interface InformationType {
    custom?: boolean;
    description?: string;
    displayName?: string;
    enabled?: boolean;
    keywords?: InformationProtectionKeyword[];
    order?: number;
    recommendedLabelId?: string;
}

// @public
export interface IngestionConnectionString {
    readonly location?: string;
    readonly value?: string;
}

// @public
export type IngestionSetting = Resource & {
    properties?: Record<string, unknown>;
};

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

// @public
export interface IngestionSettings {
    create(ingestionSettingName: string, ingestionSetting: IngestionSetting, options?: IngestionSettingsCreateOptionalParams): Promise<IngestionSettingsCreateResponse>;
    delete(ingestionSettingName: string, options?: IngestionSettingsDeleteOptionalParams): Promise<void>;
    get(ingestionSettingName: string, options?: IngestionSettingsGetOptionalParams): Promise<IngestionSettingsGetResponse>;
    list(options?: IngestionSettingsListOptionalParams): PagedAsyncIterableIterator<IngestionSetting>;
    listConnectionStrings(ingestionSettingName: string, options?: IngestionSettingsListConnectionStringsOptionalParams): Promise<IngestionSettingsListConnectionStringsResponse>;
    listTokens(ingestionSettingName: string, options?: IngestionSettingsListTokensOptionalParams): Promise<IngestionSettingsListTokensResponse>;
}

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

// @public
export type IngestionSettingsCreateResponse = IngestionSetting;

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

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

// @public
export type IngestionSettingsGetResponse = IngestionSetting;

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

// @public
export type IngestionSettingsListConnectionStringsResponse = ConnectionStrings;

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

// @public
export type IngestionSettingsListNextResponse = IngestionSettingList;

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

// @public
export type IngestionSettingsListResponse = IngestionSettingList;

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

// @public
export type IngestionSettingsListTokensResponse = IngestionSettingToken;

// @public
export interface IngestionSettingToken {
    readonly token?: string;
}

// @public
export type Intent = string;

// @public
export type IoTSecurityAggregatedAlert = Resource & TagsResource & {
    readonly alertType?: string;
    readonly alertDisplayName?: string;
    readonly aggregatedDateUtc?: Date;
    readonly vendorName?: string;
    readonly reportedSeverity?: ReportedSeverity;
    readonly remediationSteps?: string;
    readonly description?: string;
    readonly count?: number;
    readonly effectedResourceType?: string;
    readonly systemSource?: string;
    readonly actionTaken?: string;
    readonly logAnalyticsQuery?: string;
    readonly topDevicesList?: IoTSecurityAggregatedAlertPropertiesTopDevicesListItem[];
};

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

// @public (undocumented)
export interface IoTSecurityAggregatedAlertPropertiesTopDevicesListItem {
    readonly alertsCount?: number;
    readonly deviceId?: string;
    readonly lastOccurrence?: string;
}

// @public
export type IoTSecurityAggregatedRecommendation = Resource & TagsResource & {
    recommendationName?: string;
    readonly recommendationDisplayName?: string;
    readonly description?: string;
    readonly recommendationTypeId?: string;
    readonly detectedBy?: string;
    readonly remediationSteps?: string;
    readonly reportedSeverity?: ReportedSeverity;
    readonly healthyDevices?: number;
    readonly unhealthyDeviceCount?: number;
    readonly logAnalyticsQuery?: string;
};

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

// @public
export interface IoTSecurityAlertedDevice {
    readonly alertsCount?: number;
    readonly deviceId?: string;
}

// @public
export interface IoTSecurityDeviceAlert {
    readonly alertDisplayName?: string;
    readonly alertsCount?: number;
    readonly reportedSeverity?: ReportedSeverity;
}

// @public
export interface IoTSecurityDeviceRecommendation {
    readonly devicesCount?: number;
    readonly recommendationDisplayName?: string;
    readonly reportedSeverity?: ReportedSeverity;
}

// @public
export interface IotSecuritySolution {
    createOrUpdate(resourceGroupName: string, solutionName: string, iotSecuritySolutionData: IoTSecuritySolutionModel, options?: IotSecuritySolutionCreateOrUpdateOptionalParams): Promise<IotSecuritySolutionCreateOrUpdateResponse>;
    delete(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionDeleteOptionalParams): Promise<void>;
    get(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionGetOptionalParams): Promise<IotSecuritySolutionGetResponse>;
    listByResourceGroup(resourceGroupName: string, options?: IotSecuritySolutionListByResourceGroupOptionalParams): PagedAsyncIterableIterator<IoTSecuritySolutionModel>;
    listBySubscription(options?: IotSecuritySolutionListBySubscriptionOptionalParams): PagedAsyncIterableIterator<IoTSecuritySolutionModel>;
    update(resourceGroupName: string, solutionName: string, updateIotSecuritySolutionData: UpdateIotSecuritySolutionData, options?: IotSecuritySolutionUpdateOptionalParams): Promise<IotSecuritySolutionUpdateResponse>;
}

// @public
export interface IotSecuritySolutionAnalytics {
    get(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionAnalyticsGetOptionalParams): Promise<IotSecuritySolutionAnalyticsGetResponse>;
    list(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionAnalyticsListOptionalParams): Promise<IotSecuritySolutionAnalyticsListResponse>;
}

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

// @public
export type IotSecuritySolutionAnalyticsGetResponse = IoTSecuritySolutionAnalyticsModel;

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

// @public
export type IotSecuritySolutionAnalyticsListResponse = IoTSecuritySolutionAnalyticsModelList;

// @public
export type IoTSecuritySolutionAnalyticsModel = Resource & {
    readonly metrics?: IoTSeverityMetrics;
    readonly unhealthyDeviceCount?: number;
    readonly devicesMetrics?: IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem[];
    topAlertedDevices?: IoTSecurityAlertedDevice[];
    mostPrevalentDeviceAlerts?: IoTSecurityDeviceAlert[];
    mostPrevalentDeviceRecommendations?: IoTSecurityDeviceRecommendation[];
};

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

// @public (undocumented)
export interface IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem {
    date?: Date;
    devicesMetrics?: IoTSeverityMetrics;
}

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

// @public
export type IotSecuritySolutionCreateOrUpdateResponse = IoTSecuritySolutionModel;

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

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

// @public
export type IotSecuritySolutionGetResponse = IoTSecuritySolutionModel;

// @public
export interface IotSecuritySolutionListByResourceGroupNextOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type IotSecuritySolutionListByResourceGroupNextResponse = IoTSecuritySolutionsList;

// @public
export interface IotSecuritySolutionListByResourceGroupOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type IotSecuritySolutionListByResourceGroupResponse = IoTSecuritySolutionsList;

// @public
export interface IotSecuritySolutionListBySubscriptionNextOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type IotSecuritySolutionListBySubscriptionNextResponse = IoTSecuritySolutionsList;

// @public
export interface IotSecuritySolutionListBySubscriptionOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type IotSecuritySolutionListBySubscriptionResponse = IoTSecuritySolutionsList;

// @public
export type IoTSecuritySolutionModel = Resource & TagsResource & {
    location?: string;
    readonly systemData?: SystemData;
    workspace?: string;
    displayName?: string;
    status?: SecuritySolutionStatus;
    export?: ExportData[];
    disabledDataSources?: DataSource[];
    iotHubs?: string[];
    userDefinedResources?: UserDefinedResourcesProperties;
    readonly autoDiscoveredResources?: string[];
    recommendationsConfiguration?: RecommendationConfigurationProperties[];
    unmaskedIpLoggingStatus?: UnmaskedIpLoggingStatus;
    additionalWorkspaces?: AdditionalWorkspacesProperties[];
};

// @public
export interface IotSecuritySolutionsAnalyticsAggregatedAlert {
    dismiss(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options?: IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams): Promise<void>;
    get(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options?: IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams): Promise<IotSecuritySolutionsAnalyticsAggregatedAlertGetResponse>;
    list(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams): PagedAsyncIterableIterator<IoTSecurityAggregatedAlert>;
}

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

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

// @public
export type IotSecuritySolutionsAnalyticsAggregatedAlertGetResponse = IoTSecurityAggregatedAlert;

// @public
export interface IotSecuritySolutionsAnalyticsAggregatedAlertListNextOptionalParams extends coreClient.OperationOptions {
    top?: number;
}

// @public
export type IotSecuritySolutionsAnalyticsAggregatedAlertListNextResponse = IoTSecurityAggregatedAlertList;

// @public
export interface IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams extends coreClient.OperationOptions {
    top?: number;
}

// @public
export type IotSecuritySolutionsAnalyticsAggregatedAlertListResponse = IoTSecurityAggregatedAlertList;

// @public
export interface IotSecuritySolutionsAnalyticsRecommendation {
    get(resourceGroupName: string, solutionName: string, aggregatedRecommendationName: string, options?: IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams): Promise<IotSecuritySolutionsAnalyticsRecommendationGetResponse>;
    list(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionsAnalyticsRecommendationListOptionalParams): PagedAsyncIterableIterator<IoTSecurityAggregatedRecommendation>;
}

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

// @public
export type IotSecuritySolutionsAnalyticsRecommendationGetResponse = IoTSecurityAggregatedRecommendation;

// @public
export interface IotSecuritySolutionsAnalyticsRecommendationListNextOptionalParams extends coreClient.OperationOptions {
    top?: number;
}

// @public
export type IotSecuritySolutionsAnalyticsRecommendationListNextResponse = IoTSecurityAggregatedRecommendationList;

// @public
export interface IotSecuritySolutionsAnalyticsRecommendationListOptionalParams extends coreClient.OperationOptions {
    top?: number;
}

// @public
export type IotSecuritySolutionsAnalyticsRecommendationListResponse = IoTSecurityAggregatedRecommendationList;

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

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

// @public
export type IotSecuritySolutionUpdateResponse = IoTSecuritySolutionModel;

// @public
export interface IoTSeverityMetrics {
    high?: number;
    low?: number;
    medium?: number;
}

// @public
export interface JitNetworkAccessPolicies {
    createOrUpdate(resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, body: JitNetworkAccessPolicy, options?: JitNetworkAccessPoliciesCreateOrUpdateOptionalParams): Promise<JitNetworkAccessPoliciesCreateOrUpdateResponse>;
    delete(resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, options?: JitNetworkAccessPoliciesDeleteOptionalParams): Promise<void>;
    get(resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, options?: JitNetworkAccessPoliciesGetOptionalParams): Promise<JitNetworkAccessPoliciesGetResponse>;
    initiate(resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, body: JitNetworkAccessPolicyInitiateRequest, options?: JitNetworkAccessPoliciesInitiateOptionalParams): Promise<JitNetworkAccessPoliciesInitiateResponse>;
    list(options?: JitNetworkAccessPoliciesListOptionalParams): PagedAsyncIterableIterator<JitNetworkAccessPolicy>;
    listByRegion(ascLocation: string, options?: JitNetworkAccessPoliciesListByRegionOptionalParams): PagedAsyncIterableIterator<JitNetworkAccessPolicy>;
    listByResourceGroup(resourceGroupName: string, options?: JitNetworkAccessPoliciesListByResourceGroupOptionalParams): PagedAsyncIterableIterator<JitNetworkAccessPolicy>;
    listByResourceGroupAndRegion(resourceGroupName: string, ascLocation: string, options?: JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams): PagedAsyncIterableIterator<JitNetworkAccessPolicy>;
}

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

// @public
export type JitNetworkAccessPoliciesCreateOrUpdateResponse = JitNetworkAccessPolicy;

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

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

// @public
export type JitNetworkAccessPoliciesGetResponse = JitNetworkAccessPolicy;

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

// @public
export type JitNetworkAccessPoliciesInitiateResponse = JitNetworkAccessRequest;

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

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

// @public
export type JitNetworkAccessPoliciesListByRegionNextResponse = JitNetworkAccessPoliciesList;

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

// @public
export type JitNetworkAccessPoliciesListByRegionResponse = JitNetworkAccessPoliciesList;

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

// @public
export type JitNetworkAccessPoliciesListByResourceGroupAndRegionNextResponse = JitNetworkAccessPoliciesList;

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

// @public
export type JitNetworkAccessPoliciesListByResourceGroupAndRegionResponse = JitNetworkAccessPoliciesList;

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

// @public
export type JitNetworkAccessPoliciesListByResourceGroupNextResponse = JitNetworkAccessPoliciesList;

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

// @public
export type JitNetworkAccessPoliciesListByResourceGroupResponse = JitNetworkAccessPoliciesList;

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

// @public
export type JitNetworkAccessPoliciesListNextResponse = JitNetworkAccessPoliciesList;

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

// @public
export type JitNetworkAccessPoliciesListResponse = JitNetworkAccessPoliciesList;

// @public (undocumented)
export type JitNetworkAccessPolicy = Resource & KindAutoGenerated & Location_2 & {
    virtualMachines: JitNetworkAccessPolicyVirtualMachine[];
    requests?: JitNetworkAccessRequest[];
    readonly provisioningState?: string;
};

// @public (undocumented)
export interface JitNetworkAccessPolicyInitiatePort {
    allowedSourceAddressPrefix?: string;
    endTimeUtc: Date;
    // (undocumented)
    number: number;
}

// @public (undocumented)
export interface JitNetworkAccessPolicyInitiateRequest {
    justification?: string;
    virtualMachines: JitNetworkAccessPolicyInitiateVirtualMachine[];
}

// @public (undocumented)
export interface JitNetworkAccessPolicyInitiateVirtualMachine {
    id: string;
    ports: JitNetworkAccessPolicyInitiatePort[];
}

// @public (undocumented)
export interface JitNetworkAccessPolicyVirtualMachine {
    id: string;
    ports: JitNetworkAccessPortRule[];
    publicIpAddress?: string;
}

// @public (undocumented)
export interface JitNetworkAccessPortRule {
    allowedSourceAddressPrefix?: string;
    allowedSourceAddressPrefixes?: string[];
    maxRequestAccessDuration: string;
    // (undocumented)
    number: number;
    // (undocumented)
    protocol: Protocol;
}

// @public (undocumented)
export interface JitNetworkAccessRequest {
    justification?: string;
    requestor: string;
    startTimeUtc: Date;
    // (undocumented)
    virtualMachines: JitNetworkAccessRequestVirtualMachine[];
}

// @public (undocumented)
export interface JitNetworkAccessRequestPort {
    allowedSourceAddressPrefix?: string;
    allowedSourceAddressPrefixes?: string[];
    endTimeUtc: Date;
    mappedPort?: number;
    // (undocumented)
    number: number;
    status: Status;
    statusReason: StatusReason;
}

// @public (undocumented)
export interface JitNetworkAccessRequestVirtualMachine {
    id: string;
    ports: JitNetworkAccessRequestPort[];
}

// @public
export type Kind = string;

// @public
export interface KindAutoGenerated {
    kind?: string;
}

// @public
export enum KnownAadConnectivityState {
    // (undocumented)
    Connected = "Connected",
    // (undocumented)
    Discovered = "Discovered",
    // (undocumented)
    NotLicensed = "NotLicensed"
}

// @public
export enum KnownActionType {
    // (undocumented)
    EventHub = "EventHub",
    // (undocumented)
    LogicApp = "LogicApp",
    // (undocumented)
    Workspace = "Workspace"
}

// @public
export enum KnownAdaptiveApplicationControlIssue {
    // (undocumented)
    ExecutableViolationsAudited = "ExecutableViolationsAudited",
    // (undocumented)
    MsiAndScriptViolationsAudited = "MsiAndScriptViolationsAudited",
    // (undocumented)
    MsiAndScriptViolationsBlocked = "MsiAndScriptViolationsBlocked",
    // (undocumented)
    RulesViolatedManually = "RulesViolatedManually",
    // (undocumented)
    ViolationsAudited = "ViolationsAudited",
    // (undocumented)
    ViolationsBlocked = "ViolationsBlocked"
}

// @public
export enum KnownAdditionalWorkspaceDataType {
    // (undocumented)
    Alerts = "Alerts",
    // (undocumented)
    RawEvents = "RawEvents"
}

// @public
export enum KnownAdditionalWorkspaceType {
    // (undocumented)
    Sentinel = "Sentinel"
}

// @public
export enum KnownAlertNotifications {
    Off = "Off",
    On = "On"
}

// @public
export enum KnownAlertSeverity {
    High = "High",
    Informational = "Informational",
    Low = "Low",
    Medium = "Medium"
}

// @public
export enum KnownAlertStatus {
    Active = "Active",
    Dismissed = "Dismissed",
    Resolved = "Resolved"
}

// @public
export enum KnownAlertsToAdmins {
    Off = "Off",
    On = "On"
}

// @public
export enum KnownAssessedResourceType {
    // (undocumented)
    ContainerRegistryVulnerability = "ContainerRegistryVulnerability",
    // (undocumented)
    ServerVulnerability = "ServerVulnerability",
    // (undocumented)
    SqlServerVulnerability = "SqlServerVulnerability"
}

// @public
export enum KnownAssessmentStatusCode {
    Healthy = "Healthy",
    NotApplicable = "NotApplicable",
    Unhealthy = "Unhealthy"
}

// @public
export enum KnownAssessmentType {
    BuiltIn = "BuiltIn",
    CustomerManaged = "CustomerManaged",
    CustomPolicy = "CustomPolicy",
    VerifiedPartner = "VerifiedPartner"
}

// @public
export enum KnownAuthenticationProvisioningState {
    Expired = "Expired",
    IncorrectPolicy = "IncorrectPolicy",
    Invalid = "Invalid",
    Valid = "Valid"
}

// @public
export enum KnownAuthenticationType {
    AwsAssumeRole = "awsAssumeRole",
    AwsCreds = "awsCreds",
    GcpCredentials = "gcpCredentials"
}

// @public
export enum KnownAutoProvision {
    Off = "Off",
    On = "On"
}

// @public
export enum KnownBundleType {
    // (undocumented)
    AppServices = "AppServices",
    // (undocumented)
    DNS = "DNS",
    // (undocumented)
    KeyVaults = "KeyVaults",
    // (undocumented)
    KubernetesService = "KubernetesService",
    // (undocumented)
    ResourceManager = "ResourceManager",
    // (undocumented)
    SqlServers = "SqlServers",
    // (undocumented)
    StorageAccounts = "StorageAccounts",
    // (undocumented)
    VirtualMachines = "VirtualMachines"
}

// @public
export enum KnownCategories {
    // (undocumented)
    Compute = "Compute",
    // (undocumented)
    Data = "Data",
    // (undocumented)
    IdentityAndAccess = "IdentityAndAccess",
    // (undocumented)
    IoT = "IoT",
    // (undocumented)
    Networking = "Networking"
}

// @public
export enum KnownCloudName {
    // (undocumented)
    AWS = "AWS",
    // (undocumented)
    Azure = "Azure",
    // (undocumented)
    GCP = "GCP"
}

// @public
export enum KnownConfigurationStatus {
    // (undocumented)
    Configured = "Configured",
    // (undocumented)
    Failed = "Failed",
    // (undocumented)
    InProgress = "InProgress",
    // (undocumented)
    NoStatus = "NoStatus",
    // (undocumented)
    NotConfigured = "NotConfigured"
}

// @public
export enum KnownConnectionType {
    // (undocumented)
    External = "External",
    // (undocumented)
    Internal = "Internal"
}

// @public
export enum KnownControlType {
    BuiltIn = "BuiltIn",
    Custom = "Custom"
}

// @public
export enum KnownCreatedByType {
    // (undocumented)
    Application = "Application",
    // (undocumented)
    Key = "Key",
    // (undocumented)
    ManagedIdentity = "ManagedIdentity",
    // (undocumented)
    User = "User"
}

// @public
export enum KnownDataSource {
    TwinData = "TwinData"
}

// @public
export enum KnownDirection {
    // (undocumented)
    Inbound = "Inbound",
    // (undocumented)
    Outbound = "Outbound"
}

// @public
export enum KnownEndOfSupportStatus {
    // (undocumented)
    NoLongerSupported = "noLongerSupported",
    // (undocumented)
    None = "None",
    // (undocumented)
    UpcomingNoLongerSupported = "upcomingNoLongerSupported",
    // (undocumented)
    UpcomingVersionNoLongerSupported = "upcomingVersionNoLongerSupported",
    // (undocumented)
    VersionNoLongerSupported = "versionNoLongerSupported"
}

// @public
export enum KnownEnforcementMode {
    // (undocumented)
    Audit = "Audit",
    // (undocumented)
    Enforce = "Enforce",
    // (undocumented)
    None = "None"
}

// @public
export enum KnownEnforcementSupport {
    // (undocumented)
    NotSupported = "NotSupported",
    // (undocumented)
    Supported = "Supported",
    // (undocumented)
    Unknown = "Unknown"
}

// @public
export enum KnownEventSource {
    // (undocumented)
    Alerts = "Alerts",
    // (undocumented)
    Assessments = "Assessments",
    // (undocumented)
    AssessmentsSnapshot = "AssessmentsSnapshot",
    // (undocumented)
    RegulatoryComplianceAssessment = "RegulatoryComplianceAssessment",
    // (undocumented)
    RegulatoryComplianceAssessmentSnapshot = "RegulatoryComplianceAssessmentSnapshot",
    // (undocumented)
    SecureScoreControls = "SecureScoreControls",
    // (undocumented)
    SecureScoreControlsSnapshot = "SecureScoreControlsSnapshot",
    // (undocumented)
    SecureScores = "SecureScores",
    // (undocumented)
    SecureScoresSnapshot = "SecureScoresSnapshot",
    // (undocumented)
    SubAssessments = "SubAssessments",
    // (undocumented)
    SubAssessmentsSnapshot = "SubAssessmentsSnapshot"
}

// @public
export enum KnownExpandControlsEnum {
    Definition = "definition"
}

// @public
export enum KnownExpandEnum {
    Links = "links",
    Metadata = "metadata"
}

// @public
export enum KnownExportData {
    RawEvents = "RawEvents"
}

// @public
export enum KnownExternalSecuritySolutionKind {
    // (undocumented)
    AAD = "AAD",
    // (undocumented)
    ATA = "ATA",
    // (undocumented)
    CEF = "CEF"
}

// @public
export enum KnownFileType {
    // (undocumented)
    Dll = "Dll",
    // (undocumented)
    Exe = "Exe",
    // (undocumented)
    Executable = "Executable",
    // (undocumented)
    Msi = "Msi",
    // (undocumented)
    Script = "Script",
    // (undocumented)
    Unknown = "Unknown"
}

// @public
export enum KnownHybridComputeProvisioningState {
    Expired = "Expired",
    Invalid = "Invalid",
    Valid = "Valid"
}

// @public
export enum KnownImplementationEffort {
    // (undocumented)
    High = "High",
    // (undocumented)
    Low = "Low",
    // (undocumented)
    Moderate = "Moderate"
}

// @public
export enum KnownInformationProtectionPolicyName {
    // (undocumented)
    Custom = "custom",
    // (undocumented)
    Effective = "effective"
}

// @public
export enum KnownIntent {
    Collection = "Collection",
    CommandAndControl = "CommandAndControl",
    CredentialAccess = "CredentialAccess",
    DefenseEvasion = "DefenseEvasion",
    Discovery = "Discovery",
    Execution = "Execution",
    Exfiltration = "Exfiltration",
    Exploitation = "Exploitation",
    Impact = "Impact",
    InitialAccess = "InitialAccess",
    LateralMovement = "LateralMovement",
    Persistence = "Persistence",
    PreAttack = "PreAttack",
    PrivilegeEscalation = "PrivilegeEscalation",
    Probing = "Probing",
    Unknown = "Unknown"
}

// @public
export enum KnownKind {
    Bundles = "Bundles"
}

// @public
export enum KnownOfferingType {
    // (undocumented)
    CspmMonitorAws = "CspmMonitorAws",
    // (undocumented)
    DefenderForContainersAws = "DefenderForContainersAws",
    // (undocumented)
    DefenderForServersAws = "DefenderForServersAws",
    // (undocumented)
    InformationProtectionAws = "InformationProtectionAws"
}

// @public
export enum KnownOperator {
    Contains = "Contains",
    EndsWith = "EndsWith",
    Equals = "Equals",
    GreaterThan = "GreaterThan",
    GreaterThanOrEqualTo = "GreaterThanOrEqualTo",
    LesserThan = "LesserThan",
    LesserThanOrEqualTo = "LesserThanOrEqualTo",
    NotEquals = "NotEquals",
    StartsWith = "StartsWith"
}

// @public
export enum KnownOrganizationMembershipType {
    // (undocumented)
    Member = "Member",
    // (undocumented)
    Organization = "Organization"
}

// @public
export enum KnownPermissionProperty {
    AWSAmazonSSMAutomationRole = "AWS::AmazonSSMAutomationRole",
    AWSAWSSecurityHubReadOnlyAccess = "AWS::AWSSecurityHubReadOnlyAccess",
    AWSSecurityAudit = "AWS::SecurityAudit",
    GCPSecurityCenterAdminViewer = "GCP::Security Center Admin Viewer"
}

// @public
export enum KnownPricingTier {
    Free = "Free",
    Standard = "Standard"
}

// @public
export enum KnownPropertyType {
    // (undocumented)
    Boolean = "Boolean",
    // (undocumented)
    Integer = "Integer",
    // (undocumented)
    Number = "Number",
    // (undocumented)
    String = "String"
}

// @public
export enum KnownProtocol {
    // (undocumented)
    All = "*",
    // (undocumented)
    TCP = "TCP",
    // (undocumented)
    UDP = "UDP"
}

// @public
export enum KnownProvisioningState {
    // (undocumented)
    Failed = "Failed",
    // (undocumented)
    Succeeded = "Succeeded",
    // (undocumented)
    Updating = "Updating"
}

// @public
export enum KnownRecommendationAction {
    // (undocumented)
    Add = "Add",
    // (undocumented)
    Recommended = "Recommended",
    // (undocumented)
    Remove = "Remove"
}

// @public
export enum KnownRecommendationConfigStatus {
    // (undocumented)
    Disabled = "Disabled",
    // (undocumented)
    Enabled = "Enabled"
}

// @public
export enum KnownRecommendationStatus {
    // (undocumented)
    NoStatus = "NoStatus",
    // (undocumented)
    NotAvailable = "NotAvailable",
    // (undocumented)
    NotRecommended = "NotRecommended",
    // (undocumented)
    Recommended = "Recommended"
}

// @public
export enum KnownRecommendationType {
    IoTAcrauthentication = "IoT_ACRAuthentication",
    IoTAgentSendsUnutilizedMessages = "IoT_AgentSendsUnutilizedMessages",
    IoTBaseline = "IoT_Baseline",
    IoTEdgeHubMemOptimize = "IoT_EdgeHubMemOptimize",
    IoTEdgeLoggingOptions = "IoT_EdgeLoggingOptions",
    IoTInconsistentModuleSettings = "IoT_InconsistentModuleSettings",
    IoTInstallAgent = "IoT_InstallAgent",
    IoTIpfilterDenyAll = "IoT_IPFilter_DenyAll",
    IoTIpfilterPermissiveRule = "IoT_IPFilter_PermissiveRule",
    IoTOpenPorts = "IoT_OpenPorts",
    IoTPermissiveFirewallPolicy = "IoT_PermissiveFirewallPolicy",
    IoTPermissiveInputFirewallRules = "IoT_PermissiveInputFirewallRules",
    IoTPermissiveOutputFirewallRules = "IoT_PermissiveOutputFirewallRules",
    IoTPrivilegedDockerOptions = "IoT_PrivilegedDockerOptions",
    IoTSharedCredentials = "IoT_SharedCredentials",
    IoTVulnerableTLSCipherSuite = "IoT_VulnerableTLSCipherSuite"
}

// @public
export enum KnownReportedSeverity {
    // (undocumented)
    High = "High",
    // (undocumented)
    Informational = "Informational",
    // (undocumented)
    Low = "Low",
    // (undocumented)
    Medium = "Medium"
}

// @public
export enum KnownResourceIdentifierType {
    // (undocumented)
    AzureResource = "AzureResource",
    // (undocumented)
    LogAnalytics = "LogAnalytics"
}

// @public
export enum KnownResourceStatus {
    Healthy = "Healthy",
    NotApplicable = "NotApplicable",
    NotHealthy = "NotHealthy",
    OffByPolicy = "OffByPolicy"
}

// @public
export enum KnownRuleSeverity {
    High = "High",
    Informational = "Informational",
    Low = "Low",
    Medium = "Medium",
    Obsolete = "Obsolete"
}

// @public
export enum KnownRuleStatus {
    Finding = "Finding",
    InternalError = "InternalError",
    NonFinding = "NonFinding"
}

// @public
export enum KnownRuleType {
    BaselineExpected = "BaselineExpected",
    Binary = "Binary",
    NegativeList = "NegativeList",
    PositiveList = "PositiveList"
}

// @public
export enum KnownScanState {
    Failed = "Failed",
    FailedToRun = "FailedToRun",
    InProgress = "InProgress",
    Passed = "Passed"
}

// @public
export enum KnownScanTriggerType {
    OnDemand = "OnDemand",
    Recurring = "Recurring"
}

// @public
export enum KnownSecurityFamily {
    // (undocumented)
    Ngfw = "Ngfw",
    // (undocumented)
    SaasWaf = "SaasWaf",
    // (undocumented)
    Va = "Va",
    // (undocumented)
    Waf = "Waf"
}

// @public
export enum KnownSecuritySolutionStatus {
    // (undocumented)
    Disabled = "Disabled",
    // (undocumented)
    Enabled = "Enabled"
}

// @public
export enum KnownServerVulnerabilityAssessmentPropertiesProvisioningState {
    // (undocumented)
    Canceled = "Canceled",
    // (undocumented)
    Deprovisioning = "Deprovisioning",
    // (undocumented)
    Failed = "Failed",
    // (undocumented)
    Provisioning = "Provisioning",
    // (undocumented)
    Succeeded = "Succeeded"
}

// @public
export enum KnownSettingKind {
    // (undocumented)
    AlertSuppressionSetting = "AlertSuppressionSetting",
    // (undocumented)
    AlertSyncSettings = "AlertSyncSettings",
    // (undocumented)
    DataExportSettings = "DataExportSettings"
}

// @public
export enum KnownSettingName {
    // (undocumented)
    Mcas = "MCAS",
    // (undocumented)
    Sentinel = "Sentinel",
    // (undocumented)
    Wdatp = "WDATP",
    // (undocumented)
    WdatpExcludeLinuxPublicPreview = "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW"
}

// @public
export enum KnownSeverity {
    // (undocumented)
    High = "High",
    // (undocumented)
    Low = "Low",
    // (undocumented)
    Medium = "Medium"
}

// @public
export enum KnownSeverityEnum {
    // (undocumented)
    High = "High",
    // (undocumented)
    Low = "Low",
    // (undocumented)
    Medium = "Medium"
}

// @public
export enum KnownSource {
    Azure = "Azure",
    OnPremise = "OnPremise",
    OnPremiseSql = "OnPremiseSql"
}

// @public
export enum KnownSourceSystem {
    // (undocumented)
    AzureAppLocker = "Azure_AppLocker",
    // (undocumented)
    AzureAuditD = "Azure_AuditD",
    // (undocumented)
    NonAzureAppLocker = "NonAzure_AppLocker",
    // (undocumented)
    NonAzureAuditD = "NonAzure_AuditD",
    // (undocumented)
    None = "None"
}

// @public
export enum KnownState {
    Failed = "Failed",
    Passed = "Passed",
    Skipped = "Skipped",
    Unsupported = "Unsupported"
}

// @public
export enum KnownStatus {
    // (undocumented)
    Initiated = "Initiated",
    // (undocumented)
    Revoked = "Revoked"
}

// @public
export enum KnownStatusReason {
    // (undocumented)
    Expired = "Expired",
    // (undocumented)
    NewerRequestInitiated = "NewerRequestInitiated",
    // (undocumented)
    UserRequested = "UserRequested"
}

// @public
export enum KnownSubAssessmentStatusCode {
    Healthy = "Healthy",
    NotApplicable = "NotApplicable",
    Unhealthy = "Unhealthy"
}

// @public
export enum KnownSupportedCloudEnum {
    // (undocumented)
    AWS = "AWS",
    // (undocumented)
    GCP = "GCP"
}

// @public
export enum KnownTactics {
    // (undocumented)
    Collection = "Collection",
    // (undocumented)
    CommandAndControl = "Command and Control",
    // (undocumented)
    CredentialAccess = "Credential Access",
    // (undocumented)
    DefenseEvasion = "Defense Evasion",
    // (undocumented)
    Discovery = "Discovery",
    // (undocumented)
    Execution = "Execution",
    // (undocumented)
    Exfiltration = "Exfiltration",
    // (undocumented)
    Impact = "Impact",
    // (undocumented)
    InitialAccess = "Initial Access",
    // (undocumented)
    LateralMovement = "Lateral Movement",
    // (undocumented)
    Persistence = "Persistence",
    // (undocumented)
    PrivilegeEscalation = "Privilege Escalation",
    // (undocumented)
    Reconnaissance = "Reconnaissance",
    // (undocumented)
    ResourceDevelopment = "Resource Development"
}

// @public
export enum KnownTaskUpdateActionType {
    // (undocumented)
    Activate = "Activate",
    // (undocumented)
    Close = "Close",
    // (undocumented)
    Dismiss = "Dismiss",
    // (undocumented)
    Resolve = "Resolve",
    // (undocumented)
    Start = "Start"
}

// @public
export enum KnownTechniques {
    // (undocumented)
    AbuseElevationControlMechanism = "Abuse Elevation Control Mechanism",
    // (undocumented)
    AccessTokenManipulation = "Access Token Manipulation",
    // (undocumented)
    AccountDiscovery = "Account Discovery",
    // (undocumented)
    AccountManipulation = "Account Manipulation",
    // (undocumented)
    ActiveScanning = "Active Scanning",
    // (undocumented)
    ApplicationLayerProtocol = "Application Layer Protocol",
    // (undocumented)
    AudioCapture = "Audio Capture",
    // (undocumented)
    BootOrLogonAutostartExecution = "Boot or Logon Autostart Execution",
    // (undocumented)
    BootOrLogonInitializationScripts = "Boot or Logon Initialization Scripts",
    // (undocumented)
    BruteForce = "Brute Force",
    // (undocumented)
    CloudInfrastructureDiscovery = "Cloud Infrastructure Discovery",
    // (undocumented)
    CloudServiceDashboard = "Cloud Service Dashboard",
    // (undocumented)
    CloudServiceDiscovery = "Cloud Service Discovery",
    // (undocumented)
    CommandAndScriptingInterpreter = "Command and Scripting Interpreter",
    // (undocumented)
    CompromiseClientSoftwareBinary = "Compromise Client Software Binary",
    // (undocumented)
    CompromiseInfrastructure = "Compromise Infrastructure",
    // (undocumented)
    ContainerAndResourceDiscovery = "Container and Resource Discovery",
    // (undocumented)
    CreateAccount = "Create Account",
    // (undocumented)
    CreateOrModifySystemProcess = "Create or Modify System Process",
    // (undocumented)
    CredentialsFromPasswordStores = "Credentials from Password Stores",
    // (undocumented)
    DataDestruction = "Data Destruction",
    // (undocumented)
    DataEncryptedForImpact = "Data Encrypted for Impact",
    // (undocumented)
    DataFromCloudStorageObject = "Data from Cloud Storage Object",
    // (undocumented)
    DataFromConfigurationRepository = "Data from Configuration Repository",
    // (undocumented)
    DataFromInformationRepositories = "Data from Information Repositories",
    // (undocumented)
    DataFromLocalSystem = "Data from Local System",
    // (undocumented)
    DataManipulation = "Data Manipulation",
    // (undocumented)
    DataStaged = "Data Staged",
    // (undocumented)
    Defacement = "Defacement",
    // (undocumented)
    DeobfuscateDecodeFilesOrInformation = "Deobfuscate/Decode Files or Information",
    // (undocumented)
    DiskWipe = "Disk Wipe",
    // (undocumented)
    DomainTrustDiscovery = "Domain Trust Discovery",
    // (undocumented)
    DriveByCompromise = "Drive-by Compromise",
    // (undocumented)
    DynamicResolution = "Dynamic Resolution",
    // (undocumented)
    EndpointDenialOfService = "Endpoint Denial of Service",
    // (undocumented)
    EventTriggeredExecution = "Event Triggered Execution",
    // (undocumented)
    ExfiltrationOverAlternativeProtocol = "Exfiltration Over Alternative Protocol",
    // (undocumented)
    ExploitationForClientExecution = "Exploitation for Client Execution",
    // (undocumented)
    ExploitationForCredentialAccess = "Exploitation for Credential Access",
    // (undocumented)
    ExploitationForDefenseEvasion = "Exploitation for Defense Evasion",
    // (undocumented)
    ExploitationForPrivilegeEscalation = "Exploitation for Privilege Escalation",
    // (undocumented)
    ExploitationOfRemoteServices = "Exploitation of Remote Services",
    // (undocumented)
    ExploitPublicFacingApplication = "Exploit Public-Facing Application",
    // (undocumented)
    ExternalRemoteServices = "External Remote Services",
    // (undocumented)
    FallbackChannels = "Fallback Channels",
    // (undocumented)
    FileAndDirectoryDiscovery = "File and Directory Discovery",
    // (undocumented)
    FileAndDirectoryPermissionsModification = "File and Directory Permissions Modification",
    // (undocumented)
    GatherVictimNetworkInformation = "Gather Victim Network Information",
    // (undocumented)
    HideArtifacts = "Hide Artifacts",
    // (undocumented)
    HijackExecutionFlow = "Hijack Execution Flow",
    // (undocumented)
    ImpairDefenses = "Impair Defenses",
    // (undocumented)
    ImplantContainerImage = "Implant Container Image",
    // (undocumented)
    IndicatorRemovalOnHost = "Indicator Removal on Host",
    // (undocumented)
    IndirectCommandExecution = "Indirect Command Execution",
    // (undocumented)
    IngressToolTransfer = "Ingress Tool Transfer",
    // (undocumented)
    InputCapture = "Input Capture",
    // (undocumented)
    InterProcessCommunication = "Inter-Process Communication",
    // (undocumented)
    LateralToolTransfer = "Lateral Tool Transfer",
    // (undocumented)
    ManInTheMiddle = "Man-in-the-Middle",
    // (undocumented)
    Masquerading = "Masquerading",
    // (undocumented)
    ModifyAuthenticationProcess = "Modify Authentication Process",
    // (undocumented)
    ModifyRegistry = "Modify Registry",
    // (undocumented)
    NetworkDenialOfService = "Network Denial of Service",
    // (undocumented)
    NetworkServiceScanning = "Network Service Scanning",
    // (undocumented)
    NetworkSniffing = "Network Sniffing",
    // (undocumented)
    NonApplicationLayerProtocol = "Non-Application Layer Protocol",
    // (undocumented)
    NonStandardPort = "Non-Standard Port",
    // (undocumented)
    ObfuscatedFilesOrInformation = "Obfuscated Files or Information",
    // (undocumented)
    ObtainCapabilities = "Obtain Capabilities",
    // (undocumented)
    OfficeApplicationStartup = "Office Application Startup",
    // (undocumented)
    OSCredentialDumping = "OS Credential Dumping",
    // (undocumented)
    PermissionGroupsDiscovery = "Permission Groups Discovery",
    // (undocumented)
    Phishing = "Phishing",
    // (undocumented)
    PreOSBoot = "Pre-OS Boot",
    // (undocumented)
    ProcessDiscovery = "Process Discovery",
    // (undocumented)
    ProcessInjection = "Process Injection",
    // (undocumented)
    ProtocolTunneling = "Protocol Tunneling",
    // (undocumented)
    Proxy = "Proxy",
    // (undocumented)
    QueryRegistry = "Query Registry",
    // (undocumented)
    RemoteAccessSoftware = "Remote Access Software",
    // (undocumented)
    RemoteServices = "Remote Services",
    // (undocumented)
    RemoteServiceSessionHijacking = "Remote Service Session Hijacking",
    // (undocumented)
    RemoteSystemDiscovery = "Remote System Discovery",
    // (undocumented)
    ResourceHijacking = "Resource Hijacking",
    // (undocumented)
    ScheduledTaskJob = "Scheduled Task/Job",
    // (undocumented)
    ScreenCapture = "Screen Capture",
    // (undocumented)
    SearchVictimOwnedWebsites = "Search Victim-Owned Websites",
    // (undocumented)
    ServerSoftwareComponent = "Server Software Component",
    // (undocumented)
    ServiceStop = "Service Stop",
    // (undocumented)
    SignedBinaryProxyExecution = "Signed Binary Proxy Execution",
    // (undocumented)
    SoftwareDeploymentTools = "Software Deployment Tools",
    // (undocumented)
    SQLStoredProcedures = "SQL Stored Procedures",
    // (undocumented)
    StealOrForgeKerberosTickets = "Steal or Forge Kerberos Tickets",
    // (undocumented)
    SubvertTrustControls = "Subvert Trust Controls",
    // (undocumented)
    SupplyChainCompromise = "Supply Chain Compromise",
    // (undocumented)
    SystemInformationDiscovery = "System Information Discovery",
    // (undocumented)
    TaintSharedContent = "Taint Shared Content",
    // (undocumented)
    TrafficSignaling = "Traffic Signaling",
    // (undocumented)
    TransferDataToCloudAccount = "Transfer Data to Cloud Account",
    // (undocumented)
    TrustedRelationship = "Trusted Relationship",
    // (undocumented)
    UnsecuredCredentials = "Unsecured Credentials",
    // (undocumented)
    UserExecution = "User Execution",
    // (undocumented)
    ValidAccounts = "Valid Accounts",
    // (undocumented)
    WindowsManagementInstrumentation = "Windows Management Instrumentation"
}

// @public
export enum KnownThreats {
    // (undocumented)
    AccountBreach = "accountBreach",
    // (undocumented)
    DataExfiltration = "dataExfiltration",
    // (undocumented)
    DataSpillage = "dataSpillage",
    // (undocumented)
    DenialOfService = "denialOfService",
    // (undocumented)
    ElevationOfPrivilege = "elevationOfPrivilege",
    // (undocumented)
    MaliciousInsider = "maliciousInsider",
    // (undocumented)
    MissingCoverage = "missingCoverage",
    // (undocumented)
    ThreatResistance = "threatResistance"
}

// @public
export enum KnownTransportProtocol {
    // (undocumented)
    TCP = "TCP",
    // (undocumented)
    UDP = "UDP"
}

// @public
export enum KnownUnmaskedIpLoggingStatus {
    Disabled = "Disabled",
    Enabled = "Enabled"
}

// @public
export enum KnownUserImpact {
    // (undocumented)
    High = "High",
    // (undocumented)
    Low = "Low",
    // (undocumented)
    Moderate = "Moderate"
}

// @public
export enum KnownValueType {
    IpCidr = "IpCidr",
    String = "String"
}

// @public
export type ListCustomAlertRule = CustomAlertRule & {
    ruleType: "ListCustomAlertRule" | "AllowlistCustomAlertRule" | "DenylistCustomAlertRule" | "ConnectionToIpNotAllowed" | "ConnectionFromIpNotAllowed" | "LocalUserNotAllowed" | "ProcessNotAllowed";
    readonly valueType?: ValueType;
};

// @public (undocumented)
export type ListCustomAlertRuleUnion = ListCustomAlertRule | AllowlistCustomAlertRuleUnion | DenylistCustomAlertRule;

// @public
export type LocalUserNotAllowed = AllowlistCustomAlertRule & {
    ruleType: "LocalUserNotAllowed";
};

// @public
interface Location_2 {
    readonly location?: string;
}
export { Location_2 as Location }

// @public
export interface Locations {
    get(ascLocation: string, options?: LocationsGetOptionalParams): Promise<LocationsGetResponse>;
    list(options?: LocationsListOptionalParams): PagedAsyncIterableIterator<AscLocation>;
}

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

// @public
export type LocationsGetResponse = AscLocation;

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

// @public
export type LocationsListNextResponse = AscLocationList;

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

// @public
export type LocationsListResponse = AscLocationList;

// @public
export type LogAnalyticsIdentifier = ResourceIdentifier & {
    type: "LogAnalytics";
    readonly workspaceId?: string;
    readonly workspaceSubscriptionId?: string;
    readonly workspaceResourceGroup?: string;
    readonly agentId?: string;
};

// @public
export type MdeOnboardingData = Resource & {
    onboardingPackageWindows?: Uint8Array;
    onboardingPackageLinux?: Uint8Array;
};

// @public
export interface MdeOnboardingDataList {
    value?: MdeOnboardingData[];
}

// @public
export interface MdeOnboardings {
    get(options?: MdeOnboardingsGetOptionalParams): Promise<MdeOnboardingsGetResponse>;
    list(options?: MdeOnboardingsListOptionalParams): Promise<MdeOnboardingsListResponse>;
}

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

// @public
export type MdeOnboardingsGetResponse = MdeOnboardingData;

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

// @public
export type MdeOnboardingsListResponse = MdeOnboardingDataList;

// @public
export type MqttC2DMessagesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "MqttC2DMessagesNotInAllowedRange";
};

// @public
export type MqttC2DRejectedMessagesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "MqttC2DRejectedMessagesNotInAllowedRange";
};

// @public
export type MqttD2CMessagesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "MqttD2CMessagesNotInAllowedRange";
};

// @public
export type OfferingType = string;

// @public
export type OnPremiseResourceDetails = ResourceDetails & {
    source: "OnPremise" | "OnPremiseSql";
    workspaceId: string;
    vmuuid: string;
    sourceComputerId: string;
    machineName: string;
};

// @public (undocumented)
export type OnPremiseResourceDetailsUnion = OnPremiseResourceDetails | OnPremiseSqlResourceDetails;

// @public
export type OnPremiseSqlResourceDetails = OnPremiseResourceDetails & {
    source: "OnPremiseSql";
    serverName: string;
    databaseName: string;
};

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

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

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

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

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

// @public
export type OperationsListNextResponse = OperationList;

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

// @public
export type OperationsListResponse = OperationList;

// @public
export type Operator = string;

// @public
export type OrganizationMembershipType = string;

// @public
export interface PathRecommendation {
    action?: RecommendationAction;
    common?: boolean;
    configurationStatus?: ConfigurationStatus;
    fileType?: FileType;
    path?: string;
    publisherInfo?: PublisherInfo;
    type?: RecommendationType;
    // (undocumented)
    usernames?: UserRecommendation[];
    // (undocumented)
    userSids?: string[];
}

// @public
export type PermissionProperty = string;

// @public
export type Pricing = Resource & {
    pricingTier?: PricingTier;
    subPlan?: string;
    readonly freeTrialRemainingTime?: string;
};

// @public
export interface PricingList {
    value: Pricing[];
}

// @public
export interface Pricings {
    get(pricingName: string, options?: PricingsGetOptionalParams): Promise<PricingsGetResponse>;
    list(options?: PricingsListOptionalParams): Promise<PricingsListResponse>;
    update(pricingName: string, pricing: Pricing, options?: PricingsUpdateOptionalParams): Promise<PricingsUpdateResponse>;
}

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

// @public
export type PricingsGetResponse = Pricing;

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

// @public
export type PricingsListResponse = PricingList;

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

// @public
export type PricingsUpdateResponse = Pricing;

// @public
export type PricingTier = string;

// @public
export type ProcessNotAllowed = AllowlistCustomAlertRule & {
    ruleType: "ProcessNotAllowed";
};

// @public
export type PropertyType = string;

// @public
export interface ProtectionMode {
    exe?: EnforcementMode;
    executable?: EnforcementMode;
    msi?: EnforcementMode;
    script?: EnforcementMode;
}

// @public
export type Protocol = string;

// @public
export type ProvisioningState = string;

// @public
export interface ProxyServerProperties {
    ip?: string;
    port?: string;
}

// @public
export interface PublisherInfo {
    binaryName?: string;
    productName?: string;
    publisherName?: string;
    version?: string;
}

// @public
export interface QueryCheck {
    columnNames?: string[];
    expectedResult?: string[][];
    query?: string;
}

// @public
export type QueuePurgesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "QueuePurgesNotInAllowedRange";
};

// @public
export type Rank = "None" | "Low" | "Medium" | "High" | "Critical";

// @public
export type RecommendationAction = string;

// @public
export type RecommendationConfigStatus = string;

// @public
export interface RecommendationConfigurationProperties {
    readonly name?: string;
    recommendationType: RecommendationType;
    status: RecommendationConfigStatus;
}

// @public
export type RecommendationStatus = string;

// @public
export type RecommendationType = string;

// @public
export type RegulatoryComplianceAssessment = Resource & {
    readonly description?: string;
    readonly assessmentType?: string;
    readonly assessmentDetailsLink?: string;
    state?: State;
    readonly passedResources?: number;
    readonly failedResources?: number;
    readonly skippedResources?: number;
    readonly unsupportedResources?: number;
};

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

// @public
export interface RegulatoryComplianceAssessments {
    get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, regulatoryComplianceAssessmentName: string, options?: RegulatoryComplianceAssessmentsGetOptionalParams): Promise<RegulatoryComplianceAssessmentsGetResponse>;
    list(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options?: RegulatoryComplianceAssessmentsListOptionalParams): PagedAsyncIterableIterator<RegulatoryComplianceAssessment>;
}

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

// @public
export type RegulatoryComplianceAssessmentsGetResponse = RegulatoryComplianceAssessment;

// @public
export interface RegulatoryComplianceAssessmentsListNextOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type RegulatoryComplianceAssessmentsListNextResponse = RegulatoryComplianceAssessmentList;

// @public
export interface RegulatoryComplianceAssessmentsListOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type RegulatoryComplianceAssessmentsListResponse = RegulatoryComplianceAssessmentList;

// @public
export type RegulatoryComplianceControl = Resource & {
    readonly description?: string;
    state?: State;
    readonly passedAssessments?: number;
    readonly failedAssessments?: number;
    readonly skippedAssessments?: number;
};

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

// @public
export interface RegulatoryComplianceControls {
    get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options?: RegulatoryComplianceControlsGetOptionalParams): Promise<RegulatoryComplianceControlsGetResponse>;
    list(regulatoryComplianceStandardName: string, options?: RegulatoryComplianceControlsListOptionalParams): PagedAsyncIterableIterator<RegulatoryComplianceControl>;
}

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

// @public
export type RegulatoryComplianceControlsGetResponse = RegulatoryComplianceControl;

// @public
export interface RegulatoryComplianceControlsListNextOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type RegulatoryComplianceControlsListNextResponse = RegulatoryComplianceControlList;

// @public
export interface RegulatoryComplianceControlsListOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type RegulatoryComplianceControlsListResponse = RegulatoryComplianceControlList;

// @public
export type RegulatoryComplianceStandard = Resource & {
    state?: State;
    readonly passedControls?: number;
    readonly failedControls?: number;
    readonly skippedControls?: number;
    readonly unsupportedControls?: number;
};

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

// @public
export interface RegulatoryComplianceStandards {
    get(regulatoryComplianceStandardName: string, options?: RegulatoryComplianceStandardsGetOptionalParams): Promise<RegulatoryComplianceStandardsGetResponse>;
    list(options?: RegulatoryComplianceStandardsListOptionalParams): PagedAsyncIterableIterator<RegulatoryComplianceStandard>;
}

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

// @public
export type RegulatoryComplianceStandardsGetResponse = RegulatoryComplianceStandard;

// @public
export interface RegulatoryComplianceStandardsListNextOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type RegulatoryComplianceStandardsListNextResponse = RegulatoryComplianceStandardList;

// @public
export interface RegulatoryComplianceStandardsListOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type RegulatoryComplianceStandardsListResponse = RegulatoryComplianceStandardList;

// @public
export interface Remediation {
    automated?: boolean;
    description?: string;
    portalLink?: string;
    scripts?: string[];
}

// @public
export type ReportedSeverity = string;

// @public
export interface Resource {
    readonly id?: string;
    readonly name?: string;
    readonly type?: string;
}

// @public
export interface ResourceDetails {
    source: "Azure" | "OnPremise" | "OnPremiseSql";
}

// @public (undocumented)
export type ResourceDetailsUnion = ResourceDetails | AzureResourceDetails | OnPremiseResourceDetailsUnion;

// @public
export interface ResourceIdentifier {
    type: "AzureResource" | "LogAnalytics";
}

// @public
export type ResourceIdentifierType = string;

// @public (undocumented)
export type ResourceIdentifierUnion = ResourceIdentifier | AzureResourceIdentifier | LogAnalyticsIdentifier;

// @public
export type ResourceStatus = string;

// @public
export interface Rule {
    destinationPort?: number;
    direction?: Direction;
    ipAddresses?: string[];
    name?: string;
    protocols?: TransportProtocol[];
}

// @public
export type RuleResults = Resource & {
    properties?: RuleResultsProperties;
};

// @public
export interface RuleResultsInput {
    latestScan?: boolean;
    results?: string[][];
}

// @public
export interface RuleResultsProperties {
    results?: string[][];
}

// @public
export type RuleSeverity = string;

// @public
export interface RulesResults {
    value?: RuleResults[];
}

// @public
export interface RulesResultsInput {
    latestScan?: boolean;
    results?: {
        [propertyName: string]: string[][];
    };
}

// @public
export type RuleState = "Enabled" | "Disabled" | "Expired";

// @public
export type RuleStatus = string;

// @public
export type RuleType = string;

// @public
export type Scan = Resource & {
    properties?: ScanProperties;
};

// @public
export interface ScanProperties {
    database?: string;
    endTime?: Date;
    highSeverityFailedRulesCount?: number;
    isBaselineApplied?: boolean;
    lowSeverityFailedRulesCount?: number;
    mediumSeverityFailedRulesCount?: number;
    server?: string;
    sqlVersion?: string;
    startTime?: Date;
    state?: ScanState;
    totalFailedRulesCount?: number;
    totalPassedRulesCount?: number;
    totalRulesCount?: number;
    triggerType?: ScanTriggerType;
}

// @public
export type ScanResult = Resource & {
    properties?: ScanResultProperties;
};

// @public
export interface ScanResultProperties {
    baselineAdjustedResult?: BaselineAdjustedResult;
    isTrimmed?: boolean;
    queryResults?: string[][];
    remediation?: Remediation;
    ruleId?: string;
    ruleMetadata?: VaRule;
    status?: RuleStatus;
}

// @public
export interface ScanResults {
    value?: ScanResult[];
}

// @public
export interface Scans {
    value?: Scan[];
}

// @public
export type ScanState = string;

// @public
export type ScanTriggerType = string;

// @public
export interface ScopeElement {
    [property: string]: any;
    field?: string;
}

// @public
export type SecureScoreControlDefinitionItem = Resource & {
    readonly displayName?: string;
    readonly description?: string;
    readonly maxScore?: number;
    readonly source?: SecureScoreControlDefinitionSource;
    readonly assessmentDefinitions?: AzureResourceLink[];
};

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

// @public
export interface SecureScoreControlDefinitions {
    list(options?: SecureScoreControlDefinitionsListOptionalParams): PagedAsyncIterableIterator<SecureScoreControlDefinitionItem>;
    listBySubscription(options?: SecureScoreControlDefinitionsListBySubscriptionOptionalParams): PagedAsyncIterableIterator<SecureScoreControlDefinitionItem>;
}

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

// @public
export type SecureScoreControlDefinitionsListBySubscriptionNextResponse = SecureScoreControlDefinitionList;

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

// @public
export type SecureScoreControlDefinitionsListBySubscriptionResponse = SecureScoreControlDefinitionList;

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

// @public
export type SecureScoreControlDefinitionsListNextResponse = SecureScoreControlDefinitionList;

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

// @public
export type SecureScoreControlDefinitionsListResponse = SecureScoreControlDefinitionList;

// @public
export interface SecureScoreControlDefinitionSource {
    sourceType?: ControlType;
}

// @public
export type SecureScoreControlDetails = Resource & {
    readonly displayName?: string;
    readonly healthyResourceCount?: number;
    readonly unhealthyResourceCount?: number;
    readonly notApplicableResourceCount?: number;
    readonly weight?: number;
    definition?: SecureScoreControlDefinitionItem;
    readonly max?: number;
    readonly current?: number;
    readonly percentage?: number;
};

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

// @public
export interface SecureScoreControls {
    list(options?: SecureScoreControlsListOptionalParams): PagedAsyncIterableIterator<SecureScoreControlDetails>;
    listBySecureScore(secureScoreName: string, options?: SecureScoreControlsListBySecureScoreOptionalParams): PagedAsyncIterableIterator<SecureScoreControlDetails>;
}

// @public
export interface SecureScoreControlScore {
    readonly current?: number;
    readonly max?: number;
    readonly percentage?: number;
}

// @public
export interface SecureScoreControlsListBySecureScoreNextOptionalParams extends coreClient.OperationOptions {
    expand?: ExpandControlsEnum;
}

// @public
export type SecureScoreControlsListBySecureScoreNextResponse = SecureScoreControlList;

// @public
export interface SecureScoreControlsListBySecureScoreOptionalParams extends coreClient.OperationOptions {
    expand?: ExpandControlsEnum;
}

// @public
export type SecureScoreControlsListBySecureScoreResponse = SecureScoreControlList;

// @public
export interface SecureScoreControlsListNextOptionalParams extends coreClient.OperationOptions {
    expand?: ExpandControlsEnum;
}

// @public
export type SecureScoreControlsListNextResponse = SecureScoreControlList;

// @public
export interface SecureScoreControlsListOptionalParams extends coreClient.OperationOptions {
    expand?: ExpandControlsEnum;
}

// @public
export type SecureScoreControlsListResponse = SecureScoreControlList;

// @public
export type SecureScoreItem = Resource & {
    readonly displayName?: string;
    readonly weight?: number;
    readonly max?: number;
    readonly current?: number;
    readonly percentage?: number;
};

// @public
export interface SecureScores {
    get(secureScoreName: string, options?: SecureScoresGetOptionalParams): Promise<SecureScoresGetResponse>;
    list(options?: SecureScoresListOptionalParams): PagedAsyncIterableIterator<SecureScoreItem>;
}

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

// @public
export type SecureScoresGetResponse = SecureScoreItem;

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

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

// @public
export type SecureScoresListNextResponse = SecureScoresList;

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

// @public
export type SecureScoresListResponse = SecureScoresList;

// @public
export type SecurityAssessment = Resource & {
    resourceDetails?: ResourceDetailsUnion;
    readonly displayName?: string;
    additionalData?: {
        [propertyName: string]: string;
    };
    readonly links?: AssessmentLinks;
    metadata?: SecurityAssessmentMetadataProperties;
    partnersData?: SecurityAssessmentPartnerData;
    status?: AssessmentStatus;
};

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

// @public
export type SecurityAssessmentMetadata = Resource & {
    displayName?: string;
    readonly policyDefinitionId?: string;
    description?: string;
    remediationDescription?: string;
    categories?: Categories[];
    severity?: Severity;
    userImpact?: UserImpact;
    implementationEffort?: ImplementationEffort;
    threats?: Threats[];
    preview?: boolean;
    assessmentType?: AssessmentType;
    partnerData?: SecurityAssessmentMetadataPartnerData;
};

// @public
export interface SecurityAssessmentMetadataPartnerData {
    partnerName: string;
    productName?: string;
    secret: string;
}

// @public
export interface SecurityAssessmentMetadataProperties {
    assessmentType: AssessmentType;
    // (undocumented)
    categories?: Categories[];
    description?: string;
    displayName: string;
    implementationEffort?: ImplementationEffort;
    partnerData?: SecurityAssessmentMetadataPartnerData;
    readonly policyDefinitionId?: string;
    preview?: boolean;
    remediationDescription?: string;
    severity: Severity;
    // (undocumented)
    threats?: Threats[];
    userImpact?: UserImpact;
}

// @public
export type SecurityAssessmentMetadataPropertiesResponse = SecurityAssessmentMetadataProperties & {
    publishDates?: SecurityAssessmentMetadataPropertiesResponsePublishDates;
    plannedDeprecationDate?: string;
    tactics?: Tactics[];
    techniques?: Techniques[];
};

// @public (undocumented)
export interface SecurityAssessmentMetadataPropertiesResponsePublishDates {
    // (undocumented)
    ga?: string;
    // (undocumented)
    public: string;
}

// @public
export type SecurityAssessmentMetadataResponse = Resource & {
    displayName?: string;
    readonly policyDefinitionId?: string;
    description?: string;
    remediationDescription?: string;
    categories?: Categories[];
    severity?: Severity;
    userImpact?: UserImpact;
    implementationEffort?: ImplementationEffort;
    threats?: Threats[];
    preview?: boolean;
    assessmentType?: AssessmentType;
    partnerData?: SecurityAssessmentMetadataPartnerData;
    publishDates?: SecurityAssessmentMetadataPropertiesResponsePublishDates;
    plannedDeprecationDate?: string;
    tactics?: Tactics[];
    techniques?: Techniques[];
};

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

// @public
export interface SecurityAssessmentPartnerData {
    partnerName: string;
    secret: string;
}

// @public
export type SecurityAssessmentProperties = SecurityAssessmentPropertiesBase & {
    status: AssessmentStatus;
};

// @public
export interface SecurityAssessmentPropertiesBase {
    additionalData?: {
        [propertyName: string]: string;
    };
    readonly displayName?: string;
    readonly links?: AssessmentLinks;
    metadata?: SecurityAssessmentMetadataProperties;
    partnersData?: SecurityAssessmentPartnerData;
    resourceDetails: ResourceDetailsUnion;
}

// @public
export type SecurityAssessmentPropertiesResponse = SecurityAssessmentPropertiesBase & {
    status: AssessmentStatusResponse;
};

// @public
export type SecurityAssessmentResponse = Resource & {
    resourceDetails?: ResourceDetailsUnion;
    readonly displayName?: string;
    additionalData?: {
        [propertyName: string]: string;
    };
    readonly links?: AssessmentLinks;
    metadata?: SecurityAssessmentMetadataProperties;
    partnersData?: SecurityAssessmentPartnerData;
    status?: AssessmentStatusResponse;
};

// @public (undocumented)
export class SecurityCenter extends coreClient.ServiceClient {
    // (undocumented)
    $host: string;
    constructor(credentials: coreAuth.TokenCredential, subscriptionId: string, options?: SecurityCenterOptionalParams);
    // (undocumented)
    adaptiveApplicationControls: AdaptiveApplicationControls;
    // (undocumented)
    adaptiveNetworkHardenings: AdaptiveNetworkHardenings;
    // (undocumented)
    advancedThreatProtection: AdvancedThreatProtection;
    // (undocumented)
    alerts: Alerts;
    // (undocumented)
    alertsSuppressionRules: AlertsSuppressionRules;
    // (undocumented)
    allowedConnections: AllowedConnections;
    // (undocumented)
    assessments: Assessments;
    // (undocumented)
    assessmentsMetadata: AssessmentsMetadata;
    // (undocumented)
    automations: Automations;
    // (undocumented)
    autoProvisioningSettings: AutoProvisioningSettings;
    // (undocumented)
    complianceResults: ComplianceResults;
    // (undocumented)
    compliances: Compliances;
    // (undocumented)
    connectors: Connectors;
    // (undocumented)
    customAssessmentAutomations: CustomAssessmentAutomations;
    // (undocumented)
    customEntityStoreAssignments: CustomEntityStoreAssignments;
    // (undocumented)
    deviceSecurityGroups: DeviceSecurityGroups;
    // (undocumented)
    discoveredSecuritySolutions: DiscoveredSecuritySolutions;
    // (undocumented)
    externalSecuritySolutions: ExternalSecuritySolutions;
    // (undocumented)
    informationProtectionPolicies: InformationProtectionPolicies;
    // (undocumented)
    ingestionSettings: IngestionSettings;
    // (undocumented)
    iotSecuritySolution: IotSecuritySolution;
    // (undocumented)
    iotSecuritySolutionAnalytics: IotSecuritySolutionAnalytics;
    // (undocumented)
    iotSecuritySolutionsAnalyticsAggregatedAlert: IotSecuritySolutionsAnalyticsAggregatedAlert;
    // (undocumented)
    iotSecuritySolutionsAnalyticsRecommendation: IotSecuritySolutionsAnalyticsRecommendation;
    // (undocumented)
    jitNetworkAccessPolicies: JitNetworkAccessPolicies;
    // (undocumented)
    locations: Locations;
    // (undocumented)
    mdeOnboardings: MdeOnboardings;
    // (undocumented)
    operations: Operations;
    // (undocumented)
    pricings: Pricings;
    // (undocumented)
    regulatoryComplianceAssessments: RegulatoryComplianceAssessments;
    // (undocumented)
    regulatoryComplianceControls: RegulatoryComplianceControls;
    // (undocumented)
    regulatoryComplianceStandards: RegulatoryComplianceStandards;
    // (undocumented)
    secureScoreControlDefinitions: SecureScoreControlDefinitions;
    // (undocumented)
    secureScoreControls: SecureScoreControls;
    // (undocumented)
    secureScores: SecureScores;
    // (undocumented)
    securityConnectors: SecurityConnectors;
    // (undocumented)
    securityContacts: SecurityContacts;
    // (undocumented)
    securitySolutions: SecuritySolutions;
    // (undocumented)
    securitySolutionsReferenceDataOperations: SecuritySolutionsReferenceDataOperations;
    // (undocumented)
    serverVulnerabilityAssessmentOperations: ServerVulnerabilityAssessmentOperations;
    // (undocumented)
    settings: Settings;
    // (undocumented)
    softwareInventories: SoftwareInventories;
    // (undocumented)
    sqlVulnerabilityAssessmentBaselineRules: SqlVulnerabilityAssessmentBaselineRules;
    // (undocumented)
    sqlVulnerabilityAssessmentScanResults: SqlVulnerabilityAssessmentScanResults;
    // (undocumented)
    sqlVulnerabilityAssessmentScans: SqlVulnerabilityAssessmentScans;
    // (undocumented)
    subAssessments: SubAssessments;
    // (undocumented)
    subscriptionId: string;
    // (undocumented)
    tasks: Tasks;
    // (undocumented)
    topology: Topology;
    // (undocumented)
    workspaceSettings: WorkspaceSettings;
}

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

// @public
export type SecurityConnector = TrackedResource & {
    readonly systemData?: SystemData;
    hierarchyIdentifier?: string;
    cloudName?: CloudName;
    offerings?: CloudOfferingUnion[];
    organizationalData?: SecurityConnectorPropertiesOrganizationalData;
};

// @public
export interface SecurityConnectorPropertiesOrganizationalData {
    excludedAccountIds?: string[];
    organizationMembershipType?: OrganizationMembershipType;
    parentHierarchyId?: string;
    stacksetName?: string;
}

// @public
export interface SecurityConnectors {
    createOrUpdate(resourceGroupName: string, securityConnectorName: string, securityConnector: SecurityConnector, options?: SecurityConnectorsCreateOrUpdateOptionalParams): Promise<SecurityConnectorsCreateOrUpdateResponse>;
    delete(resourceGroupName: string, securityConnectorName: string, options?: SecurityConnectorsDeleteOptionalParams): Promise<void>;
    get(resourceGroupName: string, securityConnectorName: string, options?: SecurityConnectorsGetOptionalParams): Promise<SecurityConnectorsGetResponse>;
    list(options?: SecurityConnectorsListOptionalParams): PagedAsyncIterableIterator<SecurityConnector>;
    listByResourceGroup(resourceGroupName: string, options?: SecurityConnectorsListByResourceGroupOptionalParams): PagedAsyncIterableIterator<SecurityConnector>;
    update(resourceGroupName: string, securityConnectorName: string, securityConnector: SecurityConnector, options?: SecurityConnectorsUpdateOptionalParams): Promise<SecurityConnectorsUpdateResponse>;
}

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

// @public
export type SecurityConnectorsCreateOrUpdateResponse = SecurityConnector;

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

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

// @public
export type SecurityConnectorsGetResponse = SecurityConnector;

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

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

// @public
export type SecurityConnectorsListByResourceGroupNextResponse = SecurityConnectorsList;

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

// @public
export type SecurityConnectorsListByResourceGroupResponse = SecurityConnectorsList;

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

// @public
export type SecurityConnectorsListNextResponse = SecurityConnectorsList;

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

// @public
export type SecurityConnectorsListResponse = SecurityConnectorsList;

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

// @public
export type SecurityConnectorsUpdateResponse = SecurityConnector;

// @public
export type SecurityContact = Resource & {
    email?: string;
    phone?: string;
    alertNotifications?: AlertNotifications;
    alertsToAdmins?: AlertsToAdmins;
};

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

// @public
export interface SecurityContacts {
    create(securityContactName: string, securityContact: SecurityContact, options?: SecurityContactsCreateOptionalParams): Promise<SecurityContactsCreateResponse>;
    delete(securityContactName: string, options?: SecurityContactsDeleteOptionalParams): Promise<void>;
    get(securityContactName: string, options?: SecurityContactsGetOptionalParams): Promise<SecurityContactsGetResponse>;
    list(options?: SecurityContactsListOptionalParams): PagedAsyncIterableIterator<SecurityContact>;
    update(securityContactName: string, securityContact: SecurityContact, options?: SecurityContactsUpdateOptionalParams): Promise<SecurityContactsUpdateResponse>;
}

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

// @public
export type SecurityContactsCreateResponse = SecurityContact;

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

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

// @public
export type SecurityContactsGetResponse = SecurityContact;

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

// @public
export type SecurityContactsListNextResponse = SecurityContactList;

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

// @public
export type SecurityContactsListResponse = SecurityContactList;

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

// @public
export type SecurityContactsUpdateResponse = SecurityContact;

// @public
export type SecurityFamily = string;

// @public (undocumented)
export type SecuritySolution = Resource & Location_2 & {
    securityFamily?: SecurityFamily;
    provisioningState?: ProvisioningState;
    template?: string;
    protectionStatus?: string;
};

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

// @public
export interface SecuritySolutions {
    get(resourceGroupName: string, ascLocation: string, securitySolutionName: string, options?: SecuritySolutionsGetOptionalParams): Promise<SecuritySolutionsGetResponse>;
    list(options?: SecuritySolutionsListOptionalParams): PagedAsyncIterableIterator<SecuritySolution>;
}

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

// @public
export type SecuritySolutionsGetResponse = SecuritySolution;

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

// @public
export type SecuritySolutionsListNextResponse = SecuritySolutionList;

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

// @public
export type SecuritySolutionsListResponse = SecuritySolutionList;

// @public (undocumented)
export type SecuritySolutionsReferenceData = Resource & Location_2 & {
    securityFamily: SecurityFamily;
    alertVendorName: string;
    packageInfoUrl: string;
    productName: string;
    publisher: string;
    publisherDisplayName: string;
    template: string;
};

// @public (undocumented)
export interface SecuritySolutionsReferenceDataList {
    // (undocumented)
    value?: SecuritySolutionsReferenceData[];
}

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

// @public
export type SecuritySolutionsReferenceDataListByHomeRegionResponse = SecuritySolutionsReferenceDataList;

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

// @public
export type SecuritySolutionsReferenceDataListResponse = SecuritySolutionsReferenceDataList;

// @public
export interface SecuritySolutionsReferenceDataOperations {
    list(options?: SecuritySolutionsReferenceDataListOptionalParams): Promise<SecuritySolutionsReferenceDataListResponse>;
    listByHomeRegion(ascLocation: string, options?: SecuritySolutionsReferenceDataListByHomeRegionOptionalParams): Promise<SecuritySolutionsReferenceDataListByHomeRegionResponse>;
}

// @public
export type SecuritySolutionStatus = string;

// @public
export type SecuritySubAssessment = Resource & {
    readonly idPropertiesId?: string;
    readonly displayName?: string;
    status?: SubAssessmentStatus;
    readonly remediation?: string;
    readonly impact?: string;
    readonly category?: string;
    readonly description?: string;
    readonly timeGenerated?: Date;
    resourceDetails?: ResourceDetailsUnion;
    additionalData?: AdditionalDataUnion;
};

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

// @public
export type SecurityTask = Resource & {
    readonly state?: string;
    readonly creationTimeUtc?: Date;
    securityTaskParameters?: SecurityTaskParameters;
    readonly lastStateChangeTimeUtc?: Date;
    readonly subState?: string;
};

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

// @public
export interface SecurityTaskParameters {
    [property: string]: any;
    readonly name?: string;
}

// @public
export interface SensitivityLabel {
    description?: string;
    displayName?: string;
    enabled?: boolean;
    order?: number;
    rank?: Rank;
}

// @public
export type ServerVulnerabilityAssessment = Resource & {
    readonly provisioningState?: ServerVulnerabilityAssessmentPropertiesProvisioningState;
};

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

// @public
export type ServerVulnerabilityAssessmentCreateOrUpdateResponse = ServerVulnerabilityAssessment;

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

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

// @public
export type ServerVulnerabilityAssessmentGetResponse = ServerVulnerabilityAssessment;

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

// @public
export type ServerVulnerabilityAssessmentListByExtendedResourceResponse = ServerVulnerabilityAssessmentsList;

// @public
export interface ServerVulnerabilityAssessmentOperations {
    beginDelete(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentDeleteOptionalParams): Promise<PollerLike<PollOperationState<void>, void>>;
    beginDeleteAndWait(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentDeleteOptionalParams): Promise<void>;
    createOrUpdate(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams): Promise<ServerVulnerabilityAssessmentCreateOrUpdateResponse>;
    get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentGetOptionalParams): Promise<ServerVulnerabilityAssessmentGetResponse>;
    listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams): Promise<ServerVulnerabilityAssessmentListByExtendedResourceResponse>;
}

// @public
export type ServerVulnerabilityAssessmentPropertiesProvisioningState = string;

// @public
export interface ServerVulnerabilityAssessmentsList {
    // (undocumented)
    value?: ServerVulnerabilityAssessment[];
}

// @public
export type ServerVulnerabilityProperties = AdditionalData & {
    assessedResourceType: "ServerVulnerabilityAssessment";
    readonly type?: string;
    readonly cvss?: {
        [propertyName: string]: Cvss;
    };
    readonly patchable?: boolean;
    readonly cve?: Cve[];
    readonly threat?: string;
    readonly publishedTime?: Date;
    readonly vendorReferences?: VendorReference[];
};

// @public
export interface ServicePrincipalProperties {
    applicationId?: string;
    secret?: string;
}

// @public
export type Setting = Resource & {
    kind: SettingKind;
};

// @public
export type SettingKind = string;

// @public
export type SettingName = string;

// @public
export interface Settings {
    get(settingName: SettingName, options?: SettingsGetOptionalParams): Promise<SettingsGetResponse>;
    list(options?: SettingsListOptionalParams): PagedAsyncIterableIterator<SettingUnion>;
    update(settingName: SettingName, setting: SettingUnion, options?: SettingsUpdateOptionalParams): Promise<SettingsUpdateResponse>;
}

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

// @public
export type SettingsGetResponse = SettingUnion;

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

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

// @public
export type SettingsListNextResponse = SettingsList;

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

// @public
export type SettingsListResponse = SettingsList;

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

// @public
export type SettingsUpdateResponse = SettingUnion;

// @public (undocumented)
export type SettingUnion = Setting | DataExportSettings | AlertSyncSettings;

// @public
export type Severity = string;

// @public
export type SeverityEnum = string;

// @public
export type Software = Resource & {
    deviceId?: string;
    osPlatform?: string;
    vendor?: string;
    softwareName?: string;
    version?: string;
    endOfSupportStatus?: EndOfSupportStatus;
    endOfSupportDate?: string;
    numberOfKnownVulnerabilities?: number;
    firstSeenAt?: string;
};

// @public
export interface SoftwareInventories {
    get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, softwareName: string, options?: SoftwareInventoriesGetOptionalParams): Promise<SoftwareInventoriesGetResponse>;
    listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: SoftwareInventoriesListByExtendedResourceOptionalParams): PagedAsyncIterableIterator<Software>;
    listBySubscription(options?: SoftwareInventoriesListBySubscriptionOptionalParams): PagedAsyncIterableIterator<Software>;
}

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

// @public
export type SoftwareInventoriesGetResponse = Software;

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

// @public
export type SoftwareInventoriesListByExtendedResourceNextResponse = SoftwaresList;

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

// @public
export type SoftwareInventoriesListByExtendedResourceResponse = SoftwaresList;

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

// @public
export type SoftwareInventoriesListBySubscriptionNextResponse = SoftwaresList;

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

// @public
export type SoftwareInventoriesListBySubscriptionResponse = SoftwaresList;

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

// @public
export type Source = string;

// @public
export type SourceSystem = string;

// @public
export type SqlServerVulnerabilityProperties = AdditionalData & {
    assessedResourceType: "SqlServerVulnerability";
    readonly type?: string;
    readonly query?: string;
};

// @public
export interface SqlVulnerabilityAssessmentBaselineRules {
    add(workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams): Promise<SqlVulnerabilityAssessmentBaselineRulesAddResponse>;
    createOrUpdate(ruleId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams): Promise<SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateResponse>;
    delete(ruleId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams): Promise<void>;
    get(ruleId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams): Promise<SqlVulnerabilityAssessmentBaselineRulesGetResponse>;
    list(workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesListOptionalParams): Promise<SqlVulnerabilityAssessmentBaselineRulesListResponse>;
}

// @public
export interface SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams extends coreClient.OperationOptions {
    body?: RulesResultsInput;
}

// @public
export type SqlVulnerabilityAssessmentBaselineRulesAddResponse = RulesResults;

// @public
export interface SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams extends coreClient.OperationOptions {
    body?: RuleResultsInput;
}

// @public
export type SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateResponse = RuleResults;

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

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

// @public
export type SqlVulnerabilityAssessmentBaselineRulesGetResponse = RuleResults;

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

// @public
export type SqlVulnerabilityAssessmentBaselineRulesListResponse = RulesResults;

// @public
export interface SqlVulnerabilityAssessmentScanResults {
    get(scanId: string, scanResultId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScanResultsGetOptionalParams): Promise<SqlVulnerabilityAssessmentScanResultsGetResponse>;
    list(scanId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScanResultsListOptionalParams): Promise<SqlVulnerabilityAssessmentScanResultsListResponse>;
}

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

// @public
export type SqlVulnerabilityAssessmentScanResultsGetResponse = ScanResult;

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

// @public
export type SqlVulnerabilityAssessmentScanResultsListResponse = ScanResults;

// @public
export interface SqlVulnerabilityAssessmentScans {
    get(scanId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScansGetOptionalParams): Promise<SqlVulnerabilityAssessmentScansGetResponse>;
    list(workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScansListOptionalParams): Promise<SqlVulnerabilityAssessmentScansListResponse>;
}

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

// @public
export type SqlVulnerabilityAssessmentScansGetResponse = Scan;

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

// @public
export type SqlVulnerabilityAssessmentScansListResponse = Scans;

// @public
export type State = string;

// @public
export type Status = string;

// @public
export type StatusReason = string;

// @public
export interface SubAssessments {
    get(scope: string, assessmentName: string, subAssessmentName: string, options?: SubAssessmentsGetOptionalParams): Promise<SubAssessmentsGetResponse>;
    list(scope: string, assessmentName: string, options?: SubAssessmentsListOptionalParams): PagedAsyncIterableIterator<SecuritySubAssessment>;
    listAll(scope: string, options?: SubAssessmentsListAllOptionalParams): PagedAsyncIterableIterator<SecuritySubAssessment>;
}

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

// @public
export type SubAssessmentsGetResponse = SecuritySubAssessment;

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

// @public
export type SubAssessmentsListAllNextResponse = SecuritySubAssessmentList;

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

// @public
export type SubAssessmentsListAllResponse = SecuritySubAssessmentList;

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

// @public
export type SubAssessmentsListNextResponse = SecuritySubAssessmentList;

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

// @public
export type SubAssessmentsListResponse = SecuritySubAssessmentList;

// @public
export interface SubAssessmentStatus {
    readonly cause?: string;
    readonly code?: SubAssessmentStatusCode;
    readonly description?: string;
    readonly severity?: Severity;
}

// @public
export type SubAssessmentStatusCode = string;

// @public
export type SupportedCloudEnum = string;

// @public (undocumented)
export interface SuppressionAlertsScope {
    allOf: ScopeElement[];
}

// @public
export interface SystemData {
    createdAt?: Date;
    createdBy?: string;
    createdByType?: CreatedByType;
    lastModifiedAt?: Date;
    lastModifiedBy?: string;
    lastModifiedByType?: CreatedByType;
}

// @public
export type Tactics = string;

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

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

// @public
export interface Tasks {
    getResourceGroupLevelTask(resourceGroupName: string, ascLocation: string, taskName: string, options?: TasksGetResourceGroupLevelTaskOptionalParams): Promise<TasksGetResourceGroupLevelTaskResponse>;
    getSubscriptionLevelTask(ascLocation: string, taskName: string, options?: TasksGetSubscriptionLevelTaskOptionalParams): Promise<TasksGetSubscriptionLevelTaskResponse>;
    list(options?: TasksListOptionalParams): PagedAsyncIterableIterator<SecurityTask>;
    listByHomeRegion(ascLocation: string, options?: TasksListByHomeRegionOptionalParams): PagedAsyncIterableIterator<SecurityTask>;
    listByResourceGroup(resourceGroupName: string, ascLocation: string, options?: TasksListByResourceGroupOptionalParams): PagedAsyncIterableIterator<SecurityTask>;
    updateResourceGroupLevelTaskState(resourceGroupName: string, ascLocation: string, taskName: string, taskUpdateActionType: TaskUpdateActionType, options?: TasksUpdateResourceGroupLevelTaskStateOptionalParams): Promise<void>;
    updateSubscriptionLevelTaskState(ascLocation: string, taskName: string, taskUpdateActionType: TaskUpdateActionType, options?: TasksUpdateSubscriptionLevelTaskStateOptionalParams): Promise<void>;
}

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

// @public
export type TasksGetResourceGroupLevelTaskResponse = SecurityTask;

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

// @public
export type TasksGetSubscriptionLevelTaskResponse = SecurityTask;

// @public
export interface TasksListByHomeRegionNextOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type TasksListByHomeRegionNextResponse = SecurityTaskList;

// @public
export interface TasksListByHomeRegionOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type TasksListByHomeRegionResponse = SecurityTaskList;

// @public
export interface TasksListByResourceGroupNextOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type TasksListByResourceGroupNextResponse = SecurityTaskList;

// @public
export interface TasksListByResourceGroupOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type TasksListByResourceGroupResponse = SecurityTaskList;

// @public
export interface TasksListNextOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type TasksListNextResponse = SecurityTaskList;

// @public
export interface TasksListOptionalParams extends coreClient.OperationOptions {
    filter?: string;
}

// @public
export type TasksListResponse = SecurityTaskList;

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

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

// @public
export type TaskUpdateActionType = string;

// @public
export type Techniques = string;

// @public
export type Threats = string;

// @public
export type ThresholdCustomAlertRule = CustomAlertRule & {
    ruleType: "ThresholdCustomAlertRule" | "TimeWindowCustomAlertRule" | "ActiveConnectionsNotInAllowedRange" | "AmqpC2DMessagesNotInAllowedRange" | "MqttC2DMessagesNotInAllowedRange" | "HttpC2DMessagesNotInAllowedRange" | "AmqpC2DRejectedMessagesNotInAllowedRange" | "MqttC2DRejectedMessagesNotInAllowedRange" | "HttpC2DRejectedMessagesNotInAllowedRange" | "AmqpD2CMessagesNotInAllowedRange" | "MqttD2CMessagesNotInAllowedRange" | "HttpD2CMessagesNotInAllowedRange" | "DirectMethodInvokesNotInAllowedRange" | "FailedLocalLoginsNotInAllowedRange" | "FileUploadsNotInAllowedRange" | "QueuePurgesNotInAllowedRange" | "TwinUpdatesNotInAllowedRange" | "UnauthorizedOperationsNotInAllowedRange";
    minThreshold: number;
    maxThreshold: number;
};

// @public (undocumented)
export type ThresholdCustomAlertRuleUnion = ThresholdCustomAlertRule | TimeWindowCustomAlertRuleUnion;

// @public
export type TimeWindowCustomAlertRule = ThresholdCustomAlertRule & {
    ruleType: "TimeWindowCustomAlertRule" | "ActiveConnectionsNotInAllowedRange" | "AmqpC2DMessagesNotInAllowedRange" | "MqttC2DMessagesNotInAllowedRange" | "HttpC2DMessagesNotInAllowedRange" | "AmqpC2DRejectedMessagesNotInAllowedRange" | "MqttC2DRejectedMessagesNotInAllowedRange" | "HttpC2DRejectedMessagesNotInAllowedRange" | "AmqpD2CMessagesNotInAllowedRange" | "MqttD2CMessagesNotInAllowedRange" | "HttpD2CMessagesNotInAllowedRange" | "DirectMethodInvokesNotInAllowedRange" | "FailedLocalLoginsNotInAllowedRange" | "FileUploadsNotInAllowedRange" | "QueuePurgesNotInAllowedRange" | "TwinUpdatesNotInAllowedRange" | "UnauthorizedOperationsNotInAllowedRange";
    timeWindowSize: string;
};

// @public (undocumented)
export type TimeWindowCustomAlertRuleUnion = TimeWindowCustomAlertRule | ActiveConnectionsNotInAllowedRange | AmqpC2DMessagesNotInAllowedRange | MqttC2DMessagesNotInAllowedRange | HttpC2DMessagesNotInAllowedRange | AmqpC2DRejectedMessagesNotInAllowedRange | MqttC2DRejectedMessagesNotInAllowedRange | HttpC2DRejectedMessagesNotInAllowedRange | AmqpD2CMessagesNotInAllowedRange | MqttD2CMessagesNotInAllowedRange | HttpD2CMessagesNotInAllowedRange | DirectMethodInvokesNotInAllowedRange | FailedLocalLoginsNotInAllowedRange | FileUploadsNotInAllowedRange | QueuePurgesNotInAllowedRange | TwinUpdatesNotInAllowedRange | UnauthorizedOperationsNotInAllowedRange;

// @public
export interface Topology {
    get(resourceGroupName: string, ascLocation: string, topologyResourceName: string, options?: TopologyGetOptionalParams): Promise<TopologyGetResponse>;
    list(options?: TopologyListOptionalParams): PagedAsyncIterableIterator<TopologyResource>;
    listByHomeRegion(ascLocation: string, options?: TopologyListByHomeRegionOptionalParams): PagedAsyncIterableIterator<TopologyResource>;
}

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

// @public
export type TopologyGetResponse = TopologyResource;

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

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

// @public
export type TopologyListByHomeRegionNextResponse = TopologyList;

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

// @public
export type TopologyListByHomeRegionResponse = TopologyList;

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

// @public
export type TopologyListNextResponse = TopologyList;

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

// @public
export type TopologyListResponse = TopologyList;

// @public (undocumented)
export type TopologyResource = Resource & Location_2 & {
    readonly calculatedDateTime?: Date;
    readonly topologyResources?: TopologySingleResource[];
};

// @public (undocumented)
export interface TopologySingleResource {
    readonly children?: TopologySingleResourceChild[];
    readonly location?: string;
    readonly networkZones?: string;
    readonly parents?: TopologySingleResourceParent[];
    readonly recommendationsExist?: boolean;
    readonly resourceId?: string;
    readonly severity?: string;
    readonly topologyScore?: number;
}

// @public (undocumented)
export interface TopologySingleResourceChild {
    readonly resourceId?: string;
}

// @public (undocumented)
export interface TopologySingleResourceParent {
    readonly resourceId?: string;
}

// @public
export type TrackedResource = Resource & AzureTrackedResourceLocation & KindAutoGenerated & ETag & Tags & {};

// @public
export type TransportProtocol = string;

// @public
export type TwinUpdatesNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "TwinUpdatesNotInAllowedRange";
};

// @public
export type UnauthorizedOperationsNotInAllowedRange = TimeWindowCustomAlertRule & {
    ruleType: "UnauthorizedOperationsNotInAllowedRange";
};

// @public
export type UnmaskedIpLoggingStatus = string;

// @public (undocumented)
export type UpdateIotSecuritySolutionData = TagsResource & {
    userDefinedResources?: UserDefinedResourcesProperties;
    recommendationsConfiguration?: RecommendationConfigurationProperties[];
};

// @public
export interface UserDefinedResourcesProperties {
    query: string | null;
    querySubscriptions: string[] | null;
}

// @public
export type UserImpact = string;

// @public
export interface UserRecommendation {
    recommendationAction?: RecommendationAction;
    username?: string;
}

// @public
export type ValueType = string;

// @public
export interface VaRule {
    benchmarkReferences?: BenchmarkReference[];
    category?: string;
    description?: string;
    queryCheck?: QueryCheck;
    rationale?: string;
    ruleId?: string;
    ruleType?: RuleType;
    severity?: RuleSeverity;
    title?: string;
}

// @public
export interface VendorReference {
    readonly link?: string;
    readonly title?: string;
}

// @public
export interface VmRecommendation {
    configurationStatus?: ConfigurationStatus;
    enforcementSupport?: EnforcementSupport;
    recommendationAction?: RecommendationAction;
    resourceId?: string;
}

// @public
export type WorkspaceSetting = Resource & {
    workspaceId?: string;
    scope?: string;
};

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

// @public
export interface WorkspaceSettings {
    create(workspaceSettingName: string, workspaceSetting: WorkspaceSetting, options?: WorkspaceSettingsCreateOptionalParams): Promise<WorkspaceSettingsCreateResponse>;
    delete(workspaceSettingName: string, options?: WorkspaceSettingsDeleteOptionalParams): Promise<void>;
    get(workspaceSettingName: string, options?: WorkspaceSettingsGetOptionalParams): Promise<WorkspaceSettingsGetResponse>;
    list(options?: WorkspaceSettingsListOptionalParams): PagedAsyncIterableIterator<WorkspaceSetting>;
    update(workspaceSettingName: string, workspaceSetting: WorkspaceSetting, options?: WorkspaceSettingsUpdateOptionalParams): Promise<WorkspaceSettingsUpdateResponse>;
}

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

// @public
export type WorkspaceSettingsCreateResponse = WorkspaceSetting;

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

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

// @public
export type WorkspaceSettingsGetResponse = WorkspaceSetting;

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

// @public
export type WorkspaceSettingsListNextResponse = WorkspaceSettingList;

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

// @public
export type WorkspaceSettingsListResponse = WorkspaceSettingList;

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

// @public
export type WorkspaceSettingsUpdateResponse = WorkspaceSetting;

// (No @packageDocumentation comment for this package)

```
