import isaacConnection from "../../controller/isaac.js";
import { IsaacPlayable } from "./playable.js";
import { IsaacPlayableType, NewIsaacPlayableType } from "./types.js";
export declare class PlayableController {
    private isaacConn;
    private knownPlayables;
    constructor(connection: isaacConnection);
    /**
     * Retrieves list of playables
     * @returns Array of IsaacPlayables
     */
    GetPlayables(): Promise<IsaacPlayable[]>;
    GetKnownPlayables(): IsaacPlayable[];
    GetPlayable(id: number): Promise<IsaacPlayableType>;
    /**
     * Creates a new playable on the remote ISAAC system.
     * @param newPlayable is the definition of the variable to be added
     * @returns new IsaacPlayable object
     */
    addPlayable(newPlayable: NewIsaacPlayableType): Promise<IsaacPlayable>;
    registerPlayable(newPlayable: NewIsaacPlayableType): Promise<IsaacPlayable>;
    private syncWithISAAC;
}
//# sourceMappingURL=index.d.ts.map