UNPKG

@storybook/angular

Version:

Storybook for Angular: Develop, document, and test UI components in isolation

57 lines (52 loc) 2.19 kB
import { StorybookConfig as StorybookConfig$2, Options, CompatibleString, TypescriptOptions as TypescriptOptions$1 } from 'storybook/internal/types'; import { StorybookConfigWebpack, BuilderOptions, TypescriptOptions } from '@storybook/builder-webpack5'; type RulesConfig = any; type ModuleConfig = { rules?: RulesConfig[]; }; type ResolveConfig = { extensions?: string[]; mainFields?: (string | string[])[] | undefined; alias?: any; }; interface WebpackConfiguration { plugins?: any[]; module?: ModuleConfig; resolve?: ResolveConfig; optimization?: any; devtool?: false | string; } type StorybookConfig$1<TWebpackConfiguration = WebpackConfiguration> = StorybookConfig$2 & { /** * Modify or return a custom Webpack config after the Storybook's default configuration has run * (mostly used by addons). */ webpack?: (config: TWebpackConfiguration, options: Options) => TWebpackConfiguration | Promise<TWebpackConfiguration>; /** Modify or return a custom Webpack config after every addon has run. */ webpackFinal?: (config: TWebpackConfiguration, options: Options) => TWebpackConfiguration | Promise<TWebpackConfiguration>; }; type FrameworkName = CompatibleString<'@storybook/angular'>; type BuilderName = CompatibleString<'@storybook/builder-webpack5'>; type FrameworkOptions = AngularOptions & { builder?: BuilderOptions; }; type StorybookConfigFramework = { framework: FrameworkName | { name: FrameworkName; options: FrameworkOptions; }; core?: StorybookConfig$1['core'] & { builder?: BuilderName | { name: BuilderName; options: BuilderOptions; }; }; typescript?: Partial<TypescriptOptions & TypescriptOptions$1> & StorybookConfig$1['typescript']; }; /** The interface for Storybook configuration in `main.ts` files. */ type StorybookConfig = Omit<StorybookConfig$1, keyof StorybookConfigWebpack | keyof StorybookConfigFramework> & StorybookConfigWebpack & StorybookConfigFramework; interface AngularOptions { enableIvy?: boolean; } declare function defineMain(config: StorybookConfig): StorybookConfig; export { defineMain };