export interface WorkloadConfiguration {
    /** The name of the workload. */
    WorkloadName?: string;
    /** The configuration of the workload tier. */
    Tier?: 'CUSTOM' | 'DEFAULT' | 'DOT_NET_CORE' | 'DOT_NET_WORKER' | 'DOT_NET_WEB_TIER' | 'DOT_NET_WEB' | 'SQL_SERVER' | 'SQL_SERVER_ALWAYSON_AVAILABILITY_GROUP' | 'MYSQL' | 'POSTGRESQL' | 'JAVA_JMX' | 'ORACLE' | 'SAP_HANA_MULTI_NODE' | 'SAP_HANA_SINGLE_NODE' | 'SAP_HANA_HIGH_AVAILABILITY' | 'SAP_ASE_SINGLE_NODE' | 'SAP_ASE_HIGH_AVAILABILITY' | 'SQL_SERVER_FAILOVER_CLUSTER_INSTANCE' | 'SHAREPOINT' | 'ACTIVE_DIRECTORY' | 'SAP_NETWEAVER_STANDARD' | 'SAP_NETWEAVER_DISTRIBUTED' | 'SAP_NETWEAVER_HIGH_AVAILABILITY';
    /** The configuration settings of the workload. */
    Configuration?: string;
}
export interface Tag {
    /** One part of a key-value pair that defines a tag. The maximum length of a tag key is 128 characters. The minimum length is 1 character. */
    Key: string;
    /** The optional part of a key-value pair that defines a tag. The maximum length of a tag value is 256 characters. The minimum length is 0 characters. If you don't want an application to have a specific t */
    Value: string;
}
export interface AddWorkloadInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The configuration settings of the workload. The value is the escaped JSON of the configuration. */
    WorkloadConfiguration: WorkloadConfiguration;
}
export interface CreateApplicationInput {
    /** If set to true, the managed policies for SSM and CW will be attached to the instance roles if they are missing. */
    AttachMissingPermission?: boolean;
    /** Indicates whether Application Insights automatically configures unmonitored resources in the resource group. */
    AutoConfigEnabled?: boolean;
    /** Configures all of the resources in the resource group by applying the recommended configurations. */
    AutoCreate?: boolean;
    /** Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as instance terminated, failed deployment, and others. */
    CWEMonitorEnabled?: boolean;
    /** Application Insights can create applications based on a resource group or on an account. To create an account-based application using all of the resources in the account, set this parameter to ACCOUNT */
    GroupingType?: 'ACCOUNT_BASED';
    /** When set to true, creates opsItems for any problems detected on an application. */
    OpsCenterEnabled?: boolean;
    /** The SNS topic provided to Application Insights that is associated to the created opsItem. Allows you to receive notifications for updates to the opsItem. */
    OpsItemSNSTopicArn?: string;
    /** The name of the resource group. */
    ResourceGroupName?: string;
    /** The SNS notification topic ARN. */
    SNSNotificationArn?: string;
    /** List of tags to add to the application. tag key (Key) and an associated tag value (Value). The maximum length of a tag key is 128 characters. The maximum length of a tag value is 256 characters. */
    Tags?: Tag[];
}
export interface CreateComponentInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The list of resource ARNs that belong to the component. */
    ResourceList: string[];
}
export interface CreateLogPatternInput {
    /** The log pattern. The pattern must be DFA compatible. Patterns that utilize forward lookahead or backreference constructions are not supported. */
    Pattern: string;
    /** The name of the log pattern. */
    PatternName: string;
    /** The name of the log pattern set. */
    PatternSetName: string;
    /** Rank of the log pattern. Must be a value between 1 and 1,000,000. The patterns are sorted by rank, so we recommend that you set your highest priority patterns with the lowest rank. A pattern of rank 1 */
    Rank: number;
    /** The name of the resource group. */
    ResourceGroupName: string;
}
export interface DeleteApplicationInput {
    /** The name of the resource group. */
    ResourceGroupName: string;
}
export interface DeleteComponentInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
}
export interface DeleteLogPatternInput {
    /** The name of the log pattern. */
    PatternName: string;
    /** The name of the log pattern set. */
    PatternSetName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
}
export interface DescribeApplicationInput {
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
}
export interface DescribeComponentInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
}
export interface DescribeComponentConfigurationInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
}
export interface DescribeComponentConfigurationRecommendationInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The tier of the application component. */
    Tier: 'CUSTOM' | 'DEFAULT' | 'DOT_NET_CORE' | 'DOT_NET_WORKER' | 'DOT_NET_WEB_TIER' | 'DOT_NET_WEB' | 'SQL_SERVER' | 'SQL_SERVER_ALWAYSON_AVAILABILITY_GROUP' | 'MYSQL' | 'POSTGRESQL' | 'JAVA_JMX' | 'ORACLE' | 'SAP_HANA_MULTI_NODE' | 'SAP_HANA_SINGLE_NODE' | 'SAP_HANA_HIGH_AVAILABILITY' | 'SAP_ASE_SINGLE_NODE' | 'SAP_ASE_HIGH_AVAILABILITY' | 'SQL_SERVER_FAILOVER_CLUSTER_INSTANCE' | 'SHAREPOINT' | 'ACTIVE_DIRECTORY' | 'SAP_NETWEAVER_STANDARD' | 'SAP_NETWEAVER_DISTRIBUTED' | 'SAP_NETWEAVER_HIGH_AVAILABILITY';
    /** The recommended configuration type. */
    RecommendationType?: 'INFRA_ONLY' | 'WORKLOAD_ONLY' | 'ALL';
    /** The name of the workload. The name of the workload is required when the tier of the application component is SAP_ASE_SINGLE_NODE or SAP_ASE_HIGH_AVAILABILITY. */
    WorkloadName?: string;
}
export interface DescribeLogPatternInput {
    /** The name of the log pattern. */
    PatternName: string;
    /** The name of the log pattern set. */
    PatternSetName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
}
export interface DescribeObservationInput {
    /** The ID of the observation. */
    ObservationId: string;
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
}
export interface DescribeProblemInput {
    /** The ID of the problem. */
    ProblemId: string;
    /** The Amazon Web Services account ID for the owner of the resource group affected by the problem. */
    AccountId?: string;
}
export interface DescribeProblemObservationsInput {
    /** The ID of the problem. */
    ProblemId: string;
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
}
export interface DescribeWorkloadInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The ID of the workload. */
    WorkloadId: string;
    /** The Amazon Web Services account ID for the workload owner. */
    AccountId?: string;
}
export interface ListApplicationsInput {
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
    /** The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. */
    MaxResults?: number;
    /** The token to request the next page of results. */
    NextToken?: string;
}
export interface ListComponentsInput {
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
    /** The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. */
    MaxResults?: number;
    /** The token to request the next page of results. */
    NextToken?: string;
}
export interface ListConfigurationHistoryInput {
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
    /** The end time of the event. */
    EndTime?: string;
    /** The status of the configuration update event. Possible values include INFO, WARN, and ERROR. */
    EventStatus?: 'INFO' | 'WARN' | 'ERROR';
    /** The maximum number of results returned by ListConfigurationHistory in paginated output. When this parameter is used, ListConfigurationHistory returns only MaxResults in a single page along with a Next */
    MaxResults?: number;
    /** The NextToken value returned from a previous paginated ListConfigurationHistory request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the en */
    NextToken?: string;
    /** Resource group to which the application belongs. */
    ResourceGroupName?: string;
    /** The start time of the event. */
    StartTime?: string;
}
export interface ListLogPatternsInput {
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
    /** The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. */
    MaxResults?: number;
    /** The token to request the next page of results. */
    NextToken?: string;
    /** The name of the log pattern set. */
    PatternSetName?: string;
}
export interface ListLogPatternSetsInput {
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
    /** The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. */
    MaxResults?: number;
    /** The token to request the next page of results. */
    NextToken?: string;
}
export interface ListProblemsInput {
    /** The Amazon Web Services account ID for the resource group owner. */
    AccountId?: string;
    /** The name of the component. */
    ComponentName?: string;
    /** The time when the problem ended, in epoch seconds. If not specified, problems within the past seven days are returned. */
    EndTime?: string;
    /** The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. */
    MaxResults?: number;
    /** The token to request the next page of results. */
    NextToken?: string;
    /** The name of the resource group. */
    ResourceGroupName?: string;
    /** The time when the problem was detected, in epoch seconds. If you don't specify a time frame for the request, problems within the past seven days are returned. */
    StartTime?: string;
    /** Specifies whether or not you can view the problem. If not specified, visible and ignored problems are returned. */
    Visibility?: 'IGNORED' | 'VISIBLE';
}
export interface ListTagsForResourceInput {
    /** The Amazon Resource Name (ARN) of the application that you want to retrieve tag information for. */
    ResourceARN: string;
}
export interface ListWorkloadsInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The Amazon Web Services account ID of the owner of the workload. */
    AccountId?: string;
    /** The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. */
    MaxResults?: number;
    /** The token to request the next page of results. */
    NextToken?: string;
}
export interface RemoveWorkloadInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The ID of the workload. */
    WorkloadId: string;
}
export interface TagResourceInput {
    /** The Amazon Resource Name (ARN) of the application that you want to add one or more tags to. */
    ResourceARN: string;
    /** A list of tags that to add to the application. A tag consists of a required tag key (Key) and an associated tag value (Value). The maximum length of a tag key is 128 characters. The maximum length of  */
    Tags: Tag[];
}
export interface UntagResourceInput {
    /** The Amazon Resource Name (ARN) of the application that you want to remove one or more tags from. */
    ResourceARN: string;
    /** The tags (tag keys) that you want to remove from the resource. When you specify a tag key, the action removes both that key and its associated tag value. To remove more than one tag from the applicati */
    TagKeys: string[];
}
export interface UpdateApplicationInput {
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** If set to true, the managed policies for SSM and CW will be attached to the instance roles if they are missing. */
    AttachMissingPermission?: boolean;
    /** Turns auto-configuration on or off. */
    AutoConfigEnabled?: boolean;
    /** Indicates whether Application Insights can listen to CloudWatch events for the application resources, such as instance terminated, failed deployment, and others. */
    CWEMonitorEnabled?: boolean;
    /** When set to true, creates opsItems for any problems detected on an application. */
    OpsCenterEnabled?: boolean;
    /** The SNS topic provided to Application Insights that is associated to the created opsItem. Allows you to receive notifications for updates to the opsItem. */
    OpsItemSNSTopicArn?: string;
    /** Disassociates the SNS topic from the opsItem created for detected problems. */
    RemoveSNSTopic?: boolean;
    /** The SNS topic ARN. Allows you to receive SNS notifications for updates and issues with an application. */
    SNSNotificationArn?: string;
}
export interface UpdateComponentInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The new name of the component. */
    NewComponentName?: string;
    /** The list of resource ARNs that belong to the component. */
    ResourceList?: string[];
}
export interface UpdateComponentConfigurationInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** Automatically configures the component by applying the recommended configurations. */
    AutoConfigEnabled?: boolean;
    /** The configuration settings of the component. The value is the escaped JSON of the configuration. For more information about the JSON format, see Working with JSON. You can send a request to DescribeCo */
    ComponentConfiguration?: string;
    /** Indicates whether the application component is monitored. */
    Monitor?: boolean;
    /** The tier of the application component. */
    Tier?: 'CUSTOM' | 'DEFAULT' | 'DOT_NET_CORE' | 'DOT_NET_WORKER' | 'DOT_NET_WEB_TIER' | 'DOT_NET_WEB' | 'SQL_SERVER' | 'SQL_SERVER_ALWAYSON_AVAILABILITY_GROUP' | 'MYSQL' | 'POSTGRESQL' | 'JAVA_JMX' | 'ORACLE' | 'SAP_HANA_MULTI_NODE' | 'SAP_HANA_SINGLE_NODE' | 'SAP_HANA_HIGH_AVAILABILITY' | 'SAP_ASE_SINGLE_NODE' | 'SAP_ASE_HIGH_AVAILABILITY' | 'SQL_SERVER_FAILOVER_CLUSTER_INSTANCE' | 'SHAREPOINT' | 'ACTIVE_DIRECTORY' | 'SAP_NETWEAVER_STANDARD' | 'SAP_NETWEAVER_DISTRIBUTED' | 'SAP_NETWEAVER_HIGH_AVAILABILITY';
}
export interface UpdateLogPatternInput {
    /** The name of the log pattern. */
    PatternName: string;
    /** The name of the log pattern set. */
    PatternSetName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The log pattern. The pattern must be DFA compatible. Patterns that utilize forward lookahead or backreference constructions are not supported. */
    Pattern?: string;
    /** Rank of the log pattern. Must be a value between 1 and 1,000,000. The patterns are sorted by rank, so we recommend that you set your highest priority patterns with the lowest rank. A pattern of rank 1 */
    Rank?: number;
}
export interface UpdateProblemInput {
    /** The ID of the problem. */
    ProblemId: string;
    /** The status of the problem. Arguments can be passed for only problems that show a status of RECOVERING. */
    UpdateStatus?: 'RESOLVED';
    /** The visibility of a problem. When you pass a value of IGNORED, the problem is removed from the default view, and all notifications for the problem are suspended. When VISIBLE is passed, the IGNORED ac */
    Visibility?: 'IGNORED' | 'VISIBLE';
}
export interface UpdateWorkloadInput {
    /** The name of the component. */
    ComponentName: string;
    /** The name of the resource group. */
    ResourceGroupName: string;
    /** The configuration settings of the workload. The value is the escaped JSON of the configuration. */
    WorkloadConfiguration: WorkloadConfiguration;
    /** The ID of the workload. */
    WorkloadId?: string;
}
/** Application Insights service binding for Step Functions SDK integrations. */
export declare class ApplicationInsights {
    constructor();
    addWorkload<T>(params: AddWorkloadInput): Promise<T>;
    createApplication<T>(params: CreateApplicationInput): Promise<T>;
    createComponent<T>(params: CreateComponentInput): Promise<T>;
    createLogPattern<T>(params: CreateLogPatternInput): Promise<T>;
    deleteApplication<T>(params: DeleteApplicationInput): Promise<T>;
    deleteComponent<T>(params: DeleteComponentInput): Promise<T>;
    deleteLogPattern<T>(params: DeleteLogPatternInput): Promise<T>;
    describeApplication<T>(params: DescribeApplicationInput): Promise<T>;
    describeComponent<T>(params: DescribeComponentInput): Promise<T>;
    describeComponentConfiguration<T>(params: DescribeComponentConfigurationInput): Promise<T>;
    describeComponentConfigurationRecommendation<T>(params: DescribeComponentConfigurationRecommendationInput): Promise<T>;
    describeLogPattern<T>(params: DescribeLogPatternInput): Promise<T>;
    describeObservation<T>(params: DescribeObservationInput): Promise<T>;
    describeProblem<T>(params: DescribeProblemInput): Promise<T>;
    describeProblemObservations<T>(params: DescribeProblemObservationsInput): Promise<T>;
    describeWorkload<T>(params: DescribeWorkloadInput): Promise<T>;
    listApplications<T>(params: ListApplicationsInput): Promise<T>;
    listComponents<T>(params: ListComponentsInput): Promise<T>;
    listConfigurationHistory<T>(params: ListConfigurationHistoryInput): Promise<T>;
    listLogPatterns<T>(params: ListLogPatternsInput): Promise<T>;
    listLogPatternSets<T>(params: ListLogPatternSetsInput): Promise<T>;
    listProblems<T>(params: ListProblemsInput): Promise<T>;
    listTagsForResource<T>(params: ListTagsForResourceInput): Promise<T>;
    listWorkloads<T>(params: ListWorkloadsInput): Promise<T>;
    removeWorkload<T>(params: RemoveWorkloadInput): Promise<T>;
    tagResource<T>(params: TagResourceInput): Promise<T>;
    untagResource<T>(params: UntagResourceInput): Promise<T>;
    updateApplication<T>(params: UpdateApplicationInput): Promise<T>;
    updateComponent<T>(params: UpdateComponentInput): Promise<T>;
    updateComponentConfiguration<T>(params: UpdateComponentConfigurationInput): Promise<T>;
    updateLogPattern<T>(params: UpdateLogPatternInput): Promise<T>;
    updateProblem<T>(params: UpdateProblemInput): Promise<T>;
    updateWorkload<T>(params: UpdateWorkloadInput): Promise<T>;
}
//# sourceMappingURL=ApplicationInsights.d.ts.map