@nolebase/integrations
Version:
A unconfig (unified configurations) for both VitePress and VitePress theme. Supporting all Nólëbase Integrations with default theme.
36 lines (31 loc) • 1.28 kB
TypeScript
import { Options } from '@nolebase/vitepress-plugin-enhanced-readabilities/client';
import { Options as Options$1 } from '@nolebase/vitepress-plugin-git-changelog/client';
import { Options as Options$2 } from '@nolebase/vitepress-plugin-inline-link-preview/client';
import { Options as Options$3 } from '@nolebase/vitepress-plugin-page-properties/client';
import { EnhanceAppContext } from 'vitepress';
import { h } from 'vue';
interface PresetClientOptions<PagePropertiesObject extends object = any> {
enhancedMark?: false;
enhancedReadabilities?: false | {
options?: Options;
};
gitChangelog?: false | {
options?: Options$1;
};
highlightTargetedHeading?: false;
index?: false;
inlineLinkPreview?: false | {
options?: Options$2;
};
pageProperties?: false | {
options?: Options$3<PagePropertiesObject>;
};
thumbnailHash?: false;
}
type Slots = ReturnType<typeof h>[];
interface PresetClient {
enhanceLayout?: () => Record<string, Array<() => Slots[number]>>;
enhanceApp?: (ctx: EnhanceAppContext) => void | Promise<void>;
}
declare function presetClient<PagePropertiesObject extends object = any>(options?: PresetClientOptions<PagePropertiesObject>): PresetClient;
export { presetClient };