export class StrategicResourceAllocator {
    /**
     *
     * @type {TacticalModule[]}
     */
    modules: TacticalModule[];
    /**
     * @private
     * @type {Array<function(ActionSequence[]):Promise<ActionSequence[]>>}
     */
    private sequenceTransformers;
    /**
     * Add a sequence transformer, these are applied as a final step during resource allocation
     * @param {function(ActionSequence[]):Promise<ActionSequence[]>} t
     */
    addTransformer(t: (arg0: ActionSequence[]) => Promise<ActionSequence[]>): void;
    /**
     *
     * @param {TacticalModule} module
     */
    addTacticalModule(module: TacticalModule): void;
    /**
     * @template A
     * @param {Resource[]} resources
     * @returns {Promise<A[]>} actions
     */
    allocate<A>(resources: Resource[]): Promise<A[]>;
}
//# sourceMappingURL=StrategicResourceAllocator.d.ts.map