import type { ComponentType } from 'react'; import { DemoContext, IComponentDocs, PropDoc, PropDocPropsUnknown, PropExampleObject, TComponentPreviewList, TComponentPreview, TPreviewPropsItemRenderCases, TPreviewCellSize, TPreviewMatrix } from './types/types'; export declare class DocPreviewBuilder { listOfPreviews: TComponentPreviewList; /** * Most recently added preview will replace another one with same ID * @param previewItem */ add(previewItem: TComponentPreview): void; add(id: string, matrix: TPreviewMatrix, cellSize?: TPreviewCellSize): void; add(groupId: string, id: string, matrix: TPreviewMatrix, cellSize?: TPreviewCellSize): void; update(id: string, updateMatrixFn: (prevMatrix: TPreviewMatrix) => TPreviewMatrix): void; } export declare class DocBuilder implements IComponentDocs { name: string; props?: PropDoc[]; contexts?: DemoContext[]; docPreview?: DocPreviewBuilder; component: IComponentDocs['component']; constructor(docs: IComponentDocs); /** * Add the prop to the list. * If prop with such name already exists, then it throws error. * @param name * @param details */ prop(name: TProp, details: Partial>): this; /** * Merges the details to the existing prop. * If the prop not found, then it throws error. * @param name * @param details */ merge(name: TProp, details: Partial>): this; /** * Map of example name to example props * @param propName */ getPropExamplesMap(propName: TProp): { [exampleName: string]: PropExampleObject; }; getPropDetails(propName: TProp): Omit, 'name'> | undefined; setDefaultPropExample(propName: TProp, isDefaultExample: (example: PropExampleObject, index: number) => boolean): void; setDocPreview(docPreview: DocPreviewBuilder): void; getPreviewRenderCaseGroups(): TPreviewPropsItemRenderCases[]; static convertPreviewPropsItemToRenderCases: (ppi: TComponentPreview, docs: DocBuilder) => TPreviewPropsItemRenderCases; private _prop; implements(docs: any[] extends DocBuilder[] ? any[] : never): this; withContexts(...contexts: ComponentType[]): this; withContextsReplace(...contexts: ComponentType[]): this; private normalizeExamples; private exampleValueToString; } //# sourceMappingURL=DocBuilder.d.ts.map