/**
 * @module botbuilder-dialogs-adaptive
 */
/**
 * Copyright (c) Microsoft Corporation. All rights reserved.
 * Licensed under the MIT License.
 */
import { ActionContext } from './actionContext';
import { EntityAssignment } from './entityAssignment';
export interface EntityAssignmentsConfiguration {
    assignments: EntityAssignment[];
}
/**
 * Tracks entity related events to surface.
 *
 * @remarks When processing entities possible ambiguities are identified and when resolved they turn into assign events.
 * This tracking persists across multiple input utterances.
 */
export declare class EntityAssignments implements EntityAssignmentsConfiguration {
    assignments: EntityAssignment[];
    /**
     * Initializes a new instance of the [EntityAssignments](xref:botbuilder-dialogs-adaptive.EntityAssignments) class.
     *
     * @param assignments A list of [EntityAssignments](xref:botbuilder-dialogs-adaptive.EntityAssignments) to use.
     */
    constructor(assignments?: EntityAssignment[]);
    /**
     * Read entity event queue from memory.
     *
     * @param actionContext Memory context.
     * @returns Entity event queue.
     */
    static read(actionContext: ActionContext): EntityAssignments;
    /**
     * Write state into memory.
     *
     * @param actionContext Memory context.
     */
    write(actionContext: ActionContext): void;
    /**
     * Gets the next entity event to surface.
     *
     * @returns The next entity event to surface.
     */
    get nextAssignment(): EntityAssignment;
    /**
     * Remove the current event and update the memory.
     *
     * @param actionContext Memory context.
     * @returns Removed event.
     */
    dequeue(actionContext: ActionContext): EntityAssignment;
}
//# sourceMappingURL=entityAssignments.d.ts.map