import type { Meta, StoryObj } from '@storybook/react-vite' /** * Extends the Storybook Meta type with custom tag types * @template TCmpOrArgs - The component or args type * @template M - The base Meta type * @template E - The extension type containing tagType * * @deprecated use `import { ExtendsMeta } from '@repobuddy/storybook'` instead. * * @example * ```ts * // Create a generic Meta type for a project * type Meta = ExtendMeta, { tagType: 'tag1' | 'tag2' }> * * // Create a specific Meta type for a component * type Meta = ExtendMeta, { tagType: 'tag1' | 'tag2' }> * ``` */ export type ExtendMeta< TCmpOrArgs, M extends Meta, E extends { tag: string } > = Omit & { tags?: Array | undefined } /** * Extends the Storybook StoryObj type with custom tag types * @template TMetaOrCmpOrArgs - The meta, component or args type * @template S - The base StoryObj type * @template E - The extension type containing tagType * * @deprecated use `import { ExtendsStoryObj } from '@repobuddy/storybook'` instead. * * @example * ```ts * // Create a generic StoryObj type for a project * type StoryObj = ExtendStoryObj, { tagType: 'tag1' | 'tag2' }> * * // Create a specific StoryObj type for a component * type StoryObj = ExtendStoryObj, { tagType: 'tag1' | 'tag2' }> * ``` */ export type ExtendStoryObj< TMetaOrCmpOrArgs, S extends StoryObj, E extends { tag: string } > = Omit & { tags?: Array | undefined }