UNPKG

@mui/internal-docs-infra

Version:

MUI Infra - internal documentation creation tools.

31 lines 1.66 kB
import * as React from 'react'; import type { LoadCodeMeta, LoadSource, LoadVariantMeta, ParseSource, SourceTransformers, Code, ControlledCode, LoadFallbackCodeOptions, LoadVariantOptions, Externals, VariantCode } from "../CodeHighlighter/types.js"; export type LoadFallbackCodeFn = (url: string, initialVariant: string, loaded: Code | undefined, options?: LoadFallbackCodeOptions) => Promise<{ code: Code; processedGlobalsCode?: Array<Code>; }>; export type LoadVariantFn = (url: string | undefined, variantName: string, variant: VariantCode | string | undefined, options?: LoadVariantOptions) => Promise<{ code: VariantCode; dependencies: string[]; externals: Externals; }>; export type ParseCodeFn = (code: Code, parseSource: ParseSource) => Code; export type ParseControlledCodeFn = (controlledCode: ControlledCode, parseSource: ParseSource) => Code; export type ApplyTransformsFn = (parsedCode: Code, parseSource: ParseSource) => Promise<Code>; export type GetAvailableTransformsFn = (parsedCode: Code | undefined, variantName: string) => string[]; export interface CodeContext { sourceParser?: Promise<ParseSource>; parseSource?: ParseSource; sourceTransformers?: SourceTransformers; loadSource?: LoadSource; loadVariantMeta?: LoadVariantMeta; loadCodeMeta?: LoadCodeMeta; loadFallbackCode?: LoadFallbackCodeFn; loadVariant?: LoadVariantFn; parseCode?: ParseCodeFn; parseControlledCode?: ParseControlledCodeFn; applyTransforms?: ApplyTransformsFn; getAvailableTransforms?: GetAvailableTransformsFn; } export declare const CodeContext: React.Context<CodeContext>; export declare const useCodeContext: () => CodeContext;