UNPKG

pddl-workspace

Version:
28 lines (27 loc) 1.43 kB
import { DomainInfo, ProblemInfo, Plan, parser } from '../index'; import { PlannerConfiguration, PlannerProvider, PlannerRunConfiguration } from './PlannerProvider'; import { PlannerResponseHandler } from './PlannerResponseHandler'; /** Planner run-time configuration. This serves for troubleshooting run failures.*/ export interface ProviderConfiguration { /** Configuration that was used by the planner factory to create this Planner */ configuration: PlannerConfiguration; /** Planner provider that was used to create this Planner */ provider?: PlannerProvider; } /** * Abstract base class for all planners. */ export declare abstract class Planner { protected readonly plannerPath: string; protected plannerConfiguration: PlannerRunConfiguration; readonly providerConfiguration: ProviderConfiguration; private _planningProcessKilled; constructor(plannerPath: string, plannerConfiguration: PlannerRunConfiguration, providerConfiguration: ProviderConfiguration); /** `true` if the planning run was stopped */ get planningProcessKilled(): boolean; get requiresKeyboardInput(): boolean; /** `true` if the planner supports search debugger call-backs */ get supportsSearchDebugger(): boolean; abstract plan(domain: DomainInfo, problem: ProblemInfo, planParser: parser.PddlPlannerOutputParser, responseHandler: PlannerResponseHandler): Promise<Plan[]>; stop(): void; }