index.d.ts 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import { StorybookConfig as StorybookConfig$1, Options, NormalizedStoriesSpecifier } from '@storybook/types';
  2. export { BuilderResult, Options, Preset, TypescriptOptions } from '@storybook/types';
  3. type RulesConfig = any;
  4. type ModuleConfig = {
  5. rules?: RulesConfig[];
  6. };
  7. type ResolveConfig = {
  8. extensions?: string[];
  9. mainFields?: (string | string[])[] | undefined;
  10. alias?: any;
  11. };
  12. interface WebpackConfiguration {
  13. plugins?: any[];
  14. module?: ModuleConfig;
  15. resolve?: ResolveConfig;
  16. optimization?: any;
  17. devtool?: false | string;
  18. }
  19. type BuilderOptions = {
  20. fsCache?: boolean;
  21. useSWC?: boolean;
  22. lazyCompilation?: boolean;
  23. };
  24. type StorybookConfig<TWebpackConfiguration = WebpackConfiguration> = StorybookConfig$1 & {
  25. /**
  26. * Modify or return a custom Webpack config after the Storybook's default configuration
  27. * has run (mostly used by addons).
  28. */
  29. webpack?: (config: TWebpackConfiguration, options: Options) => TWebpackConfiguration | Promise<TWebpackConfiguration>;
  30. /**
  31. * Modify or return a custom Webpack config after every addon has run.
  32. */
  33. webpackFinal?: (config: TWebpackConfiguration, options: Options) => TWebpackConfiguration | Promise<TWebpackConfiguration>;
  34. };
  35. declare const loadCustomWebpackConfig: (configDir: string) => any;
  36. declare const checkWebpackVersion: (webpack: {
  37. version?: string;
  38. }, specifier: string, caption: string) => void;
  39. declare function mergeConfigs(config: WebpackConfiguration, customConfig: WebpackConfiguration): WebpackConfiguration;
  40. declare function webpackIncludeRegexp(specifier: NormalizedStoriesSpecifier): RegExp;
  41. declare function toImportFnPart(specifier: NormalizedStoriesSpecifier): string;
  42. declare function toImportFn(stories: NormalizedStoriesSpecifier[], { needPipelinedImport }?: {
  43. needPipelinedImport?: boolean;
  44. }): string;
  45. declare const toRequireContext: (specifier: NormalizedStoriesSpecifier) => {
  46. path: string;
  47. recursive: boolean;
  48. match: RegExp;
  49. };
  50. declare const toRequireContextString: (specifier: NormalizedStoriesSpecifier) => string;
  51. export { BuilderOptions, ModuleConfig, ResolveConfig, RulesConfig, StorybookConfig, WebpackConfiguration, checkWebpackVersion, loadCustomWebpackConfig, mergeConfigs, toImportFn, toImportFnPart, toRequireContext, toRequireContextString, webpackIncludeRegexp };