import { tf2_web_republisher } from '../types/tf2_web_republisher.ts';
import { default as Action } from '../core/Action.ts';
import { default as BaseTFClient } from './BaseTFClient.ts';
/**
 * A TF Client that listens to TFs from tf2_web_republisher using ROS2 actions.
 */
export default class ROS2TFClient extends BaseTFClient {
    goal_id: string;
    actionClient: Action<tf2_web_republisher.TFSubscriptionGoal, tf2_web_republisher.TFSubscriptionFeedback, tf2_web_republisher.TFSubscriptionResult>;
    currentGoal?: tf2_web_republisher.TFSubscriptionGoal;
    constructor(options: ConstructorParameters<typeof BaseTFClient>[0]);
    /**
     * Create and send a new goal (or service request) to the tf2_web_republisher
     * based on the current list of TFs.
     */
    updateGoal(): void;
    /**
     * Unsubscribe and unadvertise all topics associated with this TFClient.
     */
    dispose(): void;
}
