import type { MessageDefinition } from "@foxglove/message-definition";
import { MessageReaderOptions } from "@foxglove/rosmsg2-serialization";
import { Time } from "@foxglove/rostime";
import { Message, MessageReadOptions, SqliteDb, TopicDefinition } from "./types";
export declare const ROS2_TO_DEFINITIONS: Map<string, MessageDefinition>;
export declare const ROS2_DEFINITIONS_ARRAY: MessageDefinition[];
export declare class Rosbag2 {
    #private;
    constructor(files: SqliteDb[], messageReaderOptions?: MessageReaderOptions);
    open(): Promise<void>;
    close(): Promise<void>;
    readTopics(): Promise<TopicDefinition[]>;
    readMessages(opts?: MessageReadOptions): AsyncIterableIterator<Message>;
    timeRange(): Promise<[min: Time, max: Time]>;
    messageCounts(): Promise<Map<string, number>>;
}
//# sourceMappingURL=Rosbag2.d.ts.map