vue-styleguidist
Version:
Vue components style guide generator
47 lines (46 loc) • 1.97 kB
TypeScript
/// <reference types="webpack-dev-server" />
import 'react-styleguidist/lib/scripts/utils/ensureWebpack';
import { Stats, Configuration, Compiler } from 'webpack';
import { Theme } from 'react-styleguidist';
import { RecursivePartial } from 'react-styleguidist/lib/typings/RecursivePartial';
import { SanitizedStyleguidistConfig, StyleguidistConfig } from '../types/StyleGuide';
import * as binutils from './binutils';
export type ThemeConfig = RecursivePartial<Theme>;
export { StyleguidistConfig as Config };
export { defineConfig, defineEnhanceApp } from './helpers';
export interface StyleGuideUtils {
/**
* Build style guide.
*
* @param {Function} callback callback(err, config, stats).
* @return {Compiler} Webpack Compiler instance.
*/
build: (callback: (err: Error | undefined, config: SanitizedStyleguidistConfig, stats: Stats) => void) => Compiler.Watching | Compiler;
/**
* Start style guide dev server.
*
* @param {Function} callback callback(err, config).
* @return {ServerInfo.App} Webpack-Dev-Server.
* @return {ServerInfo.Compiler} Webpack Compiler instance.
*/
server: (callback: (err: Error | undefined, config: SanitizedStyleguidistConfig) => void) => binutils.ServerInfo;
/**
* Return Styleguidist Webpack config.
*
* @param {string} [env=production] 'production' or 'development'.
* @return {object}
*/
makeWebpackConfig: (env: 'development' | 'production' | 'none') => Configuration;
binutils: {
server: (open: boolean) => binutils.ServerInfo;
build: () => Compiler;
};
}
/**
* Initialize Vue Styleguide API.
*
* @param {object} [config] Styleguidist config.
* @param {function} [updateConfig] update config post resolution
* @returns {object} API.
*/
export default function (config: SanitizedStyleguidistConfig, updateConfig: (conf: SanitizedStyleguidistConfig) => void): StyleGuideUtils | Promise<StyleGuideUtils>;