import { SearchandiserConfig } from '../searchandiser'; import { Services } from '../services/init'; import { FluxCapacitor } from 'groupby-api'; import * as riot from 'riot'; export declare const META: symbol; export declare const STYLISH: symbol; export interface FluxTag extends riot.Tag.Instance { parent: FluxTag; opts: T; flux: FluxCapacitor; services: Services; config: SearchandiserConfig; setDefaults(config: T): void; } export declare class FluxTag { _tagName: string; _state: any; _aliases: any; init(): void; expose(aliases: string | string[], obj?: any): void; unexpose(alias: string): void; register(serviceName: string): void; transform(alias: string, realias: string | string[], options?: DependencyOptions, transform?: (obj: any) => any): void; inherits(alias: string, options?: DependencyOptions, transform?: (obj: any) => any): void; _mixin(...mixins: any[]): void; } export interface SaytTag extends FluxTag { } export declare class SaytTag { sayt: any; init(): void; } export interface TagMeta { defaults?: any; types?: TypeMap; services?: string[]; } export interface TypeMap { [key: string]: string; } export interface ConfigureOptions { defaults?: any; services?: string[]; types?: TypeMap; } export interface Dependency { alias: string; realias: string | string[]; transform: (obj: any) => any; } export interface DependencyOptions { defaults?: any; types?: TypeMap; }