/// <reference types="@rbxts/compiler-types" />
/// <reference types="roact" />
/// <reference types="roact-rodux" />
import Roact from "@rbxts/roact";
import { ZirconContext, ZirconLogLevel } from "../../Types";
export interface TopbarProps extends MappedProps, MappedDispatch {
}
interface TopbarState {
    isVisible: boolean;
    levelFilter: Set<ZirconLogLevel>;
}
declare class ZirconTopbarMenuComponent extends Roact.Component<TopbarProps, TopbarState> {
    constructor(props: TopbarProps);
    didUpdate(prevProps: TopbarProps): void;
    render(): Roact.Element;
}
interface MappedDispatch {
    updateContextFilter: (context: ZirconContext | undefined) => void;
    updateLevelFilter: (levels: Set<ZirconLogLevel>) => void;
}
interface MappedProps {
    isVisible: boolean;
    levelFilter: Set<ZirconLogLevel>;
}
/**
 * A docked console
 */
declare const ZirconTopBar: import("@rbxts/roact-rodux").ConnectedComponentClass<typeof ZirconTopbarMenuComponent, Omit<TopbarProps, keyof MappedProps | keyof MappedDispatch>>;
export default ZirconTopBar;
