import { Tag } from '@malloydata/malloy-tag'; import { Renderer } from './renderer'; import { DataRenderOptions, RenderDef, StyleDefaults } from './data_styles'; import { RendererOptions } from './renderer_types'; import { Field } from '../data_tree'; type TagPropertyExtractor = (options: T, tagObj: Tag | undefined) => void; export declare abstract class RendererFactory { readonly tagOptionExtractors: Record>; protected addExtractor(extractor: TagPropertyExtractor, ...tags: string[]): void; activates(_field: Field): boolean; isValidMatch(_field: Field): boolean; matches(renderDef: RenderDef): boolean; parseTagParameters(tags: Tag): T; abstract get rendererName(): string | undefined; abstract create(document: Document, styleDefaults: StyleDefaults, rendererOptions: RendererOptions, field: Field, renderOptions: T, timezone?: string): Renderer; } export {};