declare module "fela" { import { CSSProperties } from 'react'; type TRuleProps = {}; type TRule = (props: TRuleProps) => IStyle; type TKeyFrame = TRule; type TRendererCreator = (config?: IConfig) => IRenderer; type TPlugin = (style: IStyle) => IStyle; //http://fela.js.org/docs/advanced/Plugins.html type TEnhancer = (renderer: IRenderer) => IRenderer; //http://fela.js.org/docs/advanced/Enhancers.html const enum TSubscribeMessageType { rule = 1, staticObject = 1, keyframes = 2, fontFace = 3, staticString = 4, clear = 5 } interface ISubscribeMessage { type: TSubscribeMessageType; } interface ISubscribeRuleOrStaticObjectMessage extends ISubscribeMessage { static?: boolean; declaration: string; selector: string; media: string; } interface ISubscribeKeyframesMessage extends ISubscribeMessage { name: string; keyframe: string; } interface ISubscribeFontFaceMessage extends ISubscribeMessage { fontFamily: string; fontFace: string; } interface ISubscribeStaticStringMessage extends ISubscribeMessage { css: string; } interface ISubscribeClearMessage extends ISubscribeMessage { } interface IRenderer { renderRule(rule: TRule, props: TRuleProps): string; renderKeyframe(keyFrame: TKeyFrame, props: TRuleProps): string; renderFont(family: string, files: Array, props: TRuleProps): void; renderStatic(style: string, selector?: string): void; renderStatic(style: IStyle, selector: string): void; renderToString(): string; subscribe(event: (msg: ISubscribeRuleOrStaticObjectMessage | ISubscribeKeyframesMessage | ISubscribeFontFaceMessage | ISubscribeStaticStringMessage | ISubscribeClearMessage) => void): { unsubscribe: () => void; } clear(): void; } //http://fela.js.org/docs/advanced/RendererConfiguration.html interface IConfig { plugins?: Array; keyframePrefixes?: Array; enhancers?: Array; mediaQueryOrder?: Array; selectorPrefix?: string; } interface IStyle extends CSSProperties { //TODO: add properties, missing in React.CSSProperties } function createRenderer(config?: IConfig): IRenderer; function combineRules(...rules: Array): TRule; function enhance(...enhancers: Array): (rendererCreator: TRendererCreator) => TRendererCreator; } declare module "fela-dom" { import { IRenderer } from 'fela'; function render(renderer: IRenderer, node: HTMLElement): any; } /** * ENHANCERS */ declare module "fela-beautifier" { import { TEnhancer } from "fela"; export default function(): TEnhancer; } declare module "fela-font-renderer" { import { TEnhancer } from "fela"; export default function(mountNode?: HTMLElement): TEnhancer; } declare module "fela-layout-debugger" { import { TEnhancer } from "fela"; interface DebuggerOptions { mode?: "outline" | "backgroundColor"; thickness?: number; } export default function(options: DebuggerOptions): TEnhancer; } declare module "fela-logger" { import { TEnhancer } from "fela"; interface LoggerOptions { logCSS?: boolean; formatCSS?: boolean; } export default function(options: LoggerOptions): TEnhancer; } declare module "fela-monolithic" { import { TEnhancer } from "fela"; export default function(): TEnhancer; } declare module "fela-perf" { import { TEnhancer } from "fela"; export default function(): TEnhancer; } declare module "fela-statistics" { import { TEnhancer } from "fela"; export default function(): TEnhancer; } /** * PLUGINS */ declare module "fela-plugin-custom-property" { import { TPlugin } from "fela"; export default function(): TPlugin; } declare module "fela-plugin-extend" { import { TPlugin } from "fela"; export default function(): TPlugin; } declare module "fela-plugin-fallback-value" { import { TPlugin } from "fela"; export default function(): TPlugin; } declare module "fela-plugin-friendly-pseudo-class" { import { TPlugin } from "fela"; export default function(): TPlugin; } declare module "fela-plugin-isolation" { import { TPlugin } from "fela"; export default function(): TPlugin; } declare module "fela-plugin-logger" { import { TPlugin } from "fela"; export default function(): TPlugin; } declare module "fela-plugin-lvha" { import { TPlugin } from "fela"; export default function(): TPlugin; } declare module "fela-plugin-named-media-query" { import { TPlugin } from "fela"; interface Parameters { [key: string]: string; } export default function(param: Parameters): TPlugin; } declare module "fela-plugin-placeholder-prefixer" { import { TPlugin } from "fela"; export default function(): TPlugin; } declare module "fela-plugin-prefixer" { import { TPlugin } from "fela"; export default function(): TPlugin; } declare module "fela-plugin-dynamic-prefixer" { import { TPlugin } from "fela"; interface Configs { userAgent?: any; keepUnprefixed?: boolean; } export default function(configs: Configs): TPlugin; } declare module "fela-plugin-remove-undefined" { import { TPlugin } from "fela"; export default function(): TPlugin; } declare module "fela-plugin-unit" { import { TPlugin } from "fela"; type Unit = "ch" | "em" | "ex" | "rem" | "vh" | "vw" | "vmin" | "vmax" | "px" | "cm" | "mm" | "in" | "pc" | "pt" | "mozmm"; interface UnitPerProperty { [key: string]: string; } export default function(unit?: Unit, unitPerProperty?: UnitPerProperty): TPlugin; } declare module "fela-plugin-validator" { import { TPlugin } from "fela"; interface Configs { logInvalid?: boolean; deleteInvalid?: boolean; } export default function(configs: Configs): TPlugin; } /** * PRESETS */ declare module "fela-preset-web" { import { TPlugin } from "fela"; const presets: TPlugin[]; export default presets; } declare module "fela-preset-dev" { import { TPlugin } from "fela"; const presets: TPlugin[]; export default presets; } /** * TODO: * * 1. definition for `connect` is missing */ declare module "react-fela" { import * as React from "react"; import { IRenderer } from "fela"; interface ThemeProviderProps { theme: object; overwrite?: boolean; } /** * Fela Theme Provider */ export class ThemeProvider extends React.Component { } interface ProviderProps { renderer: object; mountNode?: any; } /** * Fela Provider * * @see {@link https://github.com/rofrischmann/fela/blob/master/modules/bindings/react/ThemeProvider.js} */ export class Provider extends React.Component { } type StyleFunction = (props: Props) => React.CSSProperties; type Style = React.CSSProperties | StyleFunction; type PassThroughProps = Array; /** * Fela injects theme props. * * @see {@link https://github.com/rofrischmann/fela/blob/master/modules/bindings/createComponentFactory.js#L52} */ interface FelaInjectedProps { theme?: any; /** * To change the type on runtime and/or for each component, you may use the is prop. */ is?: string; /** * This use case is especially important for library owners. * Instead of passing the passThroughProps to the createComponent call directly, * one can also use the passThrough prop on the created component to achieve the same effect. */ passThrough?: PassThroughProps; /** * ref to underlying component * * @see {@link https://github.com/rofrischmann/fela/blob/master/modules/bindings/createComponentFactory.js#L68} */ innerRef?: (instance: any) => void; } /** * Returns a stateless HTML React component with Fela styles. * * @see {@link https://github.com/rofrischmann/fela/blob/master/modules/bindings/createComponentFactory.js#L15-L82} */ type FelaHtmlComponent = React.ComponentClass>; /** * Returns a stateless SVG React component with Fela styles. */ type FelaSvgComponent = React.ComponentClass>; /** * By default, Fela returns a `div` stateless React component. * * @see {@link https://github.com/rofrischmann/fela/blob/master/modules/bindings/createComponentFactory.js#L12} */ type DefaultFelaHtmlComponent = FelaHtmlComponent; /** * * @param {Style} style - style function */ export function createComponent(style: Style): DefaultFelaHtmlComponent; /** * * @param {Style} style - style function * @param {string} base - HTML element tag name * @param {Array} passThroughProps - A list of props that get passed to the underlying element. */ export function createComponent(style: Style, base: string, passThroughProps?: Array): FelaHtmlComponent; /** * * @param {Style} style - style function * @param {FelaHtmlComponent} base - Fela component * @param {Array} passThroughProps - A list of props that get passed to the underlying element. */ export function createComponent(style: Style, base: FelaHtmlComponent, passThroughProps?: Array): FelaHtmlComponent; export function createComponent(style: Style, base: "a", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "abbr", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "address", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "area", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "article", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "aside", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "audio", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "b", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "base", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "bdi", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "bdo", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "big", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "blockquote", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "body", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "br", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "button", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "canvas", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "caption", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "cite", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "code", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "col", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "colgroup", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "data", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "datalist", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "dd", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "del", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "details", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "dfn", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "dialog", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "div", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "dl", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "dt", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "em", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "embed", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "fieldset", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "figcaption", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "figure", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "footer", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "form", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "h1", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "h2", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "h3", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "h4", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "h5", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "h6", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "head", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "header", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "hgroup", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "hr", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "html", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "i", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "iframe", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "img", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "input", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "ins", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "kbd", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "keygen", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "label", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "legend", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "li", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "link", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "main", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "map", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "mark", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "menu", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "menuitem", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "meta", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "meter", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "nav", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "noindex", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "noscript", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "object", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "ol", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "optgroup", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "option", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "output", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "p", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "param", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "picture", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "pre", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "progress", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "q", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "rp", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "rt", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "ruby", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "s", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "samp", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "script", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "section", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "select", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "small", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "source", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "span", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "strong", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "style", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "sub", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "summary", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "sup", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "table", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "tbody", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "td", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "textarea", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "tfoot", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "th", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "thead", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "time", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "title", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "tr", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "track", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "u", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "ul", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "var", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "video", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "wbr", passThroughProps?: PassThroughProps): FelaHtmlComponent; export function createComponent(style: Style, base: "svg", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "circle", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "clipPath", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "defs", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "desc", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "ellipse", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feBlend", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feColorMatrix", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feComponentTransfer", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feComposite", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feConvolveMatrix", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feDiffuseLighting", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feDisplacementMap", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feDistantLight", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feFlood", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feFuncA", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feFuncB", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feFuncG", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feFuncR", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feGaussianBlur", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feImage", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feMerge", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feMergeNode", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feMorphology", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feOffset", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "fePointLight", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feSpecularLighting", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feSpotLight", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feTile", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "feTurbulence", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "filter", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "foreignObject", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "g", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "image", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "line", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "linearGradient", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "marker", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "mask", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "metadata", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "path", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "pattern", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "polygon", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "polyline", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "radialGradient", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "rect", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "stop", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "switch", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "symbol", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "text", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "textPath", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "tspan", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "use", passThroughProps?: PassThroughProps): FelaSvgComponent; export function createComponent(style: Style, base: "view", passThroughProps?: PassThroughProps): FelaSvgComponent; }