export interface CapacityUnitsConfiguration {
    /** The amount of extra capacity for your rescore execution plan. A single extra capacity unit for a rescore execution plan provides 0.01 rescore requests per second. You can add up to 1000 extra capacity */
    RescoreCapacityUnits: number;
}
export interface Tag {
    /** The key for the tag. Keys are not case sensitive and must be unique. */
    Key: string;
    /** The value associated with the tag. The value can be an empty string but it can't be null. */
    Value: string;
}
export interface Document {
    /** The identifier of the document from the search service. */
    Id: string;
    /** The optional group identifier of the document from the search service. Documents with the same group identifier are grouped together and processed as one document within the service. */
    GroupId?: string;
    /** The title of the search service's document. */
    Title?: string;
    /** The body text of the search service's document. */
    Body?: string;
    /** The title of the search service's document represented as a list of tokens or words. You must choose to provide Title or TokenizedTitle. You cannot provide both. */
    TokenizedTitle?: any[];
    /** The body text of the search service's document represented as a list of tokens or words. You must choose to provide Body or TokenizedBody. You cannot provide both. */
    TokenizedBody?: any[];
    /** The original document score or rank from the search service. Amazon Kendra Intelligent Ranking gives the document a new score or rank based on its intelligent search algorithms. */
    OriginalScore: number;
}
export interface CreateRescoreExecutionPlanInput {
    /** A name for the rescore execution plan. */
    Name: string;
    /** You can set additional capacity units to meet the needs of your rescore execution plan. You are given a single capacity unit by default. If you want to use the default capacity, you don't set addition */
    CapacityUnits?: CapacityUnitsConfiguration;
    /** A token that you provide to identify the request to create a rescore execution plan. Multiple calls to the CreateRescoreExecutionPlanRequest API with the same client token will create only one rescore */
    ClientToken?: string;
    /** A description for the rescore execution plan. */
    Description?: string;
    /** A list of key-value pairs that identify or categorize your rescore execution plan. You can also use tags to help control access to the rescore execution plan. Tag keys and values can consist of Unicod */
    Tags?: Tag[];
}
export interface DeleteRescoreExecutionPlanInput {
    /** The identifier of the rescore execution plan that you want to delete. */
    Id: string;
}
export interface DescribeRescoreExecutionPlanInput {
    /** The identifier of the rescore execution plan that you want to get information on. */
    Id: string;
}
export interface ListRescoreExecutionPlansInput {
    /** The maximum number of rescore execution plans to return. */
    MaxResults?: number;
    /** If the response is truncated, Amazon Kendra Intelligent Ranking returns a pagination token in the response. You can use this pagination token to retrieve the next set of rescore execution plans. */
    NextToken?: string;
}
/** The request information for listing tags associated with a rescore execution plan. A rescore execution plan is an Amazon Kendra Intelligent Ranking resource used for provisioning the Rescore API. */
export interface ListTagsForResourceInput {
    /** The Amazon Resource Name (ARN) of the rescore execution plan to get a list of tags for. */
    ResourceARN: string;
}
export interface RescoreInput {
    /** The list of documents for Amazon Kendra Intelligent Ranking to rescore or rank on. */
    Documents: Document[];
    /** The identifier of the rescore execution plan. A rescore execution plan is an Amazon Kendra Intelligent Ranking resource used for provisioning the Rescore API. */
    RescoreExecutionPlanId: string;
    /** The input query from the search service. */
    SearchQuery: string;
}
/** The request information for tagging a rescore execution plan. A rescore execution plan is an Amazon Kendra Intelligent Ranking resource used for provisioning the Rescore API. */
export interface TagResourceInput {
    /** The Amazon Resource Name (ARN) of the rescore execution plan to tag. */
    ResourceARN: string;
    /** A list of tag keys to add to a rescore execution plan. If a tag already exists, the existing value is replaced with the new value. */
    Tags: Tag[];
}
/** The request information to remove a tag from a rescore execution plan. A rescore execution plan is an Amazon Kendra Intelligent Ranking resource used for provisioning the Rescore API. */
export interface UntagResourceInput {
    /** The Amazon Resource Name (ARN) of the rescore execution plan to remove the tag. */
    ResourceARN: string;
    /** A list of tag keys to remove from the rescore execution plan. If a tag key does not exist on the resource, it is ignored. */
    TagKeys: string[];
}
export interface UpdateRescoreExecutionPlanInput {
    /** The identifier of the rescore execution plan that you want to update. */
    Id: string;
    /** You can set additional capacity units to meet the needs of your rescore execution plan. You are given a single capacity unit by default. If you want to use the default capacity, you don't set addition */
    CapacityUnits?: CapacityUnitsConfiguration;
    /** A new description for the rescore execution plan. */
    Description?: string;
    /** A new name for the rescore execution plan. */
    Name?: string;
}
/** Kendra Ranking service binding for Step Functions SDK integrations. */
export declare class KendraRanking {
    constructor();
    createRescoreExecutionPlan<T>(params: CreateRescoreExecutionPlanInput): Promise<T>;
    deleteRescoreExecutionPlan<T>(params: DeleteRescoreExecutionPlanInput): Promise<T>;
    describeRescoreExecutionPlan<T>(params: DescribeRescoreExecutionPlanInput): Promise<T>;
    listRescoreExecutionPlans<T>(params: ListRescoreExecutionPlansInput): Promise<T>;
    listTagsForResource<T>(params: ListTagsForResourceInput): Promise<T>;
    rescore<T>(params: RescoreInput): Promise<T>;
    tagResource<T>(params: TagResourceInput): Promise<T>;
    untagResource<T>(params: UntagResourceInput): Promise<T>;
    updateRescoreExecutionPlan<T>(params: UpdateRescoreExecutionPlanInput): Promise<T>;
}
//# sourceMappingURL=KendraRanking.d.ts.map