/**
 * Dynamic programming agent
 */
export default class DPAgent {
    /**
     * @param {RLEnvironmentBase} env Environment
     * @param {number} [resolution] Resolution
     */
    constructor(env: RLEnvironmentBase, resolution?: number);
    _table: DPTable;
    /**
     * Returns a score.
     * @returns {Array<Array<Array<number>>>} Score values
     */
    get_score(): Array<Array<Array<number>>>;
    /**
     * Returns a action.
     * @param {*[]} state Current states
     * @returns {*[]} Action
     */
    get_action(state: any[]): any[];
    /**
     * Update model.
     * @param {'value' | 'policy'} method Method name
     */
    update(method: "value" | "policy"): void;
}
declare class DPTable extends QTableBase {
    constructor(env: any, resolution?: number, gamma?: number);
    _v: any[];
    _gamma: number;
    _step_index(size: any, index: any): boolean;
    update(method?: string): void;
    policyIteration(): void;
    valueIteration(): void;
}
import { RLEnvironmentBase } from '../rl/base.js';
import { QTableBase } from './q_learning.js';
export {};
