import { Tab } from '../../tab';
import { SidecarModeFilter } from './modes';
import { MetadataBearing } from '../../../models/entity';
import { BadgeSpec, BadgeOptions } from '../badge';
export interface BadgeRegistration<Resource extends MetadataBearing> {
    when: SidecarModeFilter<Resource>;
    badge: BadgeSpec | ((resource: Resource) => BadgeSpec);
}
export declare function registerSidecarBadge<Resource extends MetadataBearing>(registration: BadgeRegistration<Resource>): void;
export default registerSidecarBadge;
export declare function apply<Resource extends MetadataBearing>(tab: Tab, entity: {
    resource: Resource;
}, badgeOptions: BadgeOptions): void;
