export interface RecommendationResourceExclusion {
    /** The ARN of the Recommendation Resource */
    arn: string;
    /** The exclusion status */
    isExcluded: boolean;
}
export interface BatchUpdateRecommendationResourceExclusionInput {
    /** A list of recommendation resource ARNs and exclusion status to update */
    recommendationResourceExclusions: RecommendationResourceExclusion[];
}
export interface GetOrganizationRecommendationInput {
    /** The Recommendation identifier */
    organizationRecommendationIdentifier: string;
}
export interface GetRecommendationInput {
    /** The Recommendation identifier */
    recommendationIdentifier: string;
    /** The ISO 639-1 code for the language that you want your recommendations to appear in. */
    language?: 'en' | 'ja' | 'zh' | 'fr' | 'de' | 'ko' | 'zh_TW' | 'it' | 'es' | 'pt_BR' | 'id';
}
export interface ListChecksInput {
    /** The aws service associated with the check */
    awsService?: string;
    /** The ISO 639-1 code for the language that you want your checks to appear in. */
    language?: 'en' | 'ja' | 'zh' | 'fr' | 'de' | 'ko' | 'zh_TW' | 'it' | 'es' | 'pt_BR' | 'id';
    /** The maximum number of results to return per page. */
    maxResults?: number;
    /** The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results. */
    nextToken?: string;
    /** The pillar of the check */
    pillar?: 'cost_optimizing' | 'performance' | 'security' | 'service_limits' | 'fault_tolerance' | 'operational_excellence';
    /** The source of the check */
    source?: 'aws_config' | 'compute_optimizer' | 'cost_explorer' | 'lse' | 'manual' | 'pse' | 'rds' | 'resilience' | 'resilience_hub' | 'security_hub' | 'stir' | 'ta_check' | 'well_architected' | 'cost_optimization_hub';
}
export interface ListOrganizationRecommendationAccountsInput {
    /** The Recommendation identifier */
    organizationRecommendationIdentifier: string;
    /** An account affected by this organization recommendation */
    affectedAccountId?: string;
    /** The maximum number of results to return per page. */
    maxResults?: number;
    /** The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results. */
    nextToken?: string;
}
export interface ListOrganizationRecommendationResourcesInput {
    /** The AWS Organization organization's Recommendation identifier */
    organizationRecommendationIdentifier: string;
    /** An account affected by this organization recommendation */
    affectedAccountId?: string;
    /** The exclusion status of the resource */
    exclusionStatus?: 'excluded' | 'included';
    /** The maximum number of results to return per page. */
    maxResults?: number;
    /** The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results. */
    nextToken?: string;
    /** The AWS Region code of the resource */
    regionCode?: string;
    /** The status of the resource */
    status?: 'ok' | 'warning' | 'error';
}
export interface ListOrganizationRecommendationsInput {
    /** After the last update of the Recommendation */
    afterLastUpdatedAt?: string;
    /** The aws service associated with the Recommendation */
    awsService?: string;
    /** Before the last update of the Recommendation */
    beforeLastUpdatedAt?: string;
    /** The check identifier of the Recommendation */
    checkIdentifier?: string;
    /** The maximum number of results to return per page. */
    maxResults?: number;
    /** The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results. */
    nextToken?: string;
    /** The pillar of the Recommendation */
    pillar?: 'cost_optimizing' | 'performance' | 'security' | 'service_limits' | 'fault_tolerance' | 'operational_excellence';
    /** The source of the Recommendation */
    source?: 'aws_config' | 'compute_optimizer' | 'cost_explorer' | 'lse' | 'manual' | 'pse' | 'rds' | 'resilience' | 'resilience_hub' | 'security_hub' | 'stir' | 'ta_check' | 'well_architected' | 'cost_optimization_hub';
    /** The status of the Recommendation */
    status?: 'ok' | 'warning' | 'error';
    /** The type of the Recommendation */
    type?: 'standard' | 'priority';
}
export interface ListRecommendationResourcesInput {
    /** The Recommendation identifier */
    recommendationIdentifier: string;
    /** The exclusion status of the resource */
    exclusionStatus?: 'excluded' | 'included';
    /** The ISO 639-1 code for the language that you want your recommendations to appear in. */
    language?: 'en' | 'ja' | 'zh' | 'fr' | 'de' | 'ko' | 'zh_TW' | 'it' | 'es' | 'pt_BR' | 'id';
    /** The maximum number of results to return per page. */
    maxResults?: number;
    /** The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results. */
    nextToken?: string;
    /** The AWS Region code of the resource */
    regionCode?: string;
    /** The status of the resource */
    status?: 'ok' | 'warning' | 'error';
}
export interface ListRecommendationsInput {
    /** After the last update of the Recommendation */
    afterLastUpdatedAt?: string;
    /** The aws service associated with the Recommendation */
    awsService?: string;
    /** Before the last update of the Recommendation */
    beforeLastUpdatedAt?: string;
    /** The check identifier of the Recommendation */
    checkIdentifier?: string;
    /** The ISO 639-1 code for the language that you want your recommendations to appear in. */
    language?: 'en' | 'ja' | 'zh' | 'fr' | 'de' | 'ko' | 'zh_TW' | 'it' | 'es' | 'pt_BR' | 'id';
    /** The maximum number of results to return per page. */
    maxResults?: number;
    /** The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results. */
    nextToken?: string;
    /** The pillar of the Recommendation */
    pillar?: 'cost_optimizing' | 'performance' | 'security' | 'service_limits' | 'fault_tolerance' | 'operational_excellence';
    /** The source of the Recommendation */
    source?: 'aws_config' | 'compute_optimizer' | 'cost_explorer' | 'lse' | 'manual' | 'pse' | 'rds' | 'resilience' | 'resilience_hub' | 'security_hub' | 'stir' | 'ta_check' | 'well_architected' | 'cost_optimization_hub';
    /** The status of the Recommendation */
    status?: 'ok' | 'warning' | 'error';
    /** The type of the Recommendation */
    type?: 'standard' | 'priority';
}
export interface UpdateOrganizationRecommendationLifecycleInput {
    /** The new lifecycle stage */
    lifecycleStage: 'pending_response' | 'in_progress' | 'dismissed' | 'resolved';
    /** The Recommendation identifier for AWS Trusted Advisor Priority recommendations */
    organizationRecommendationIdentifier: string;
    /** Reason for the lifecycle stage change */
    updateReason?: string;
    /** Reason code for the lifecycle state change */
    updateReasonCode?: 'non_critical_account' | 'temporary_account' | 'valid_business_case' | 'other_methods_available' | 'low_priority' | 'not_applicable' | 'other';
}
export interface UpdateRecommendationLifecycleInput {
    /** The new lifecycle stage */
    lifecycleStage: 'pending_response' | 'in_progress' | 'dismissed' | 'resolved';
    /** The Recommendation identifier for AWS Trusted Advisor Priority recommendations */
    recommendationIdentifier: string;
    /** Reason for the lifecycle stage change */
    updateReason?: string;
    /** Reason code for the lifecycle state change */
    updateReasonCode?: 'non_critical_account' | 'temporary_account' | 'valid_business_case' | 'other_methods_available' | 'low_priority' | 'not_applicable' | 'other';
}
/** TrustedAdvisor service binding for Step Functions SDK integrations. */
export declare class TrustedAdvisor {
    constructor();
    batchUpdateRecommendationResourceExclusion<T>(params: BatchUpdateRecommendationResourceExclusionInput): Promise<T>;
    getOrganizationRecommendation<T>(params: GetOrganizationRecommendationInput): Promise<T>;
    getRecommendation<T>(params: GetRecommendationInput): Promise<T>;
    listChecks<T>(params: ListChecksInput): Promise<T>;
    listOrganizationRecommendationAccounts<T>(params: ListOrganizationRecommendationAccountsInput): Promise<T>;
    listOrganizationRecommendationResources<T>(params: ListOrganizationRecommendationResourcesInput): Promise<T>;
    listOrganizationRecommendations<T>(params: ListOrganizationRecommendationsInput): Promise<T>;
    listRecommendationResources<T>(params: ListRecommendationResourcesInput): Promise<T>;
    listRecommendations<T>(params: ListRecommendationsInput): Promise<T>;
    updateOrganizationRecommendationLifecycle<T>(params: UpdateOrganizationRecommendationLifecycleInput): Promise<T>;
    updateRecommendationLifecycle<T>(params: UpdateRecommendationLifecycleInput): Promise<T>;
}
//# sourceMappingURL=TrustedAdvisor.d.ts.map