/**
 * Cascading blackboard interface. Allows composition of multiple blackboard to be used to represent a single whole
 * The access is always done from top to bottom. If a value is not found at the top of the stack, a lower slot will be considered until the end. In which case value will be created in the blackboard identified by "write_slot"
 */
export class BlackboardStack extends AbstractBlackboard {
    /**
     * @private
     * @type {AbstractBlackboard[]}
     */
    private __items;
    /**
     *
     * @type {AbstractBlackboard}
     * @private
     */
    private __write_slot;
    contains(name: any, type: any): boolean;
    acquire(name: any, type: any, initialValue: any): any;
    /**
     *
     * @param {AbstractBlackboard} v
     */
    setWriteSlot(v: AbstractBlackboard): void;
    __pick_write_slot(): void;
    /**
     *
     * @param {AbstractBlackboard} item
     */
    push(item: AbstractBlackboard): void;
    /**
     *
     * @param {AbstractBlackboard} item
     * @param {number} position
     */
    insert(item: AbstractBlackboard, position: number): void;
    /**
     *
     * @param {AbstractBlackboard} item
     * @returns {boolean}
     */
    remove(item: AbstractBlackboard): boolean;
}
import { AbstractBlackboard } from "./AbstractBlackboard.js";
//# sourceMappingURL=BlackboardStack.d.ts.map