@studiocms/ui
Version:
The UI library for StudioCMS. Includes the layouts & components we use to build StudioCMS.
71 lines (70 loc) • 2.07 kB
TypeScript
/**
* Triple slash references for ambient types
*
* @remarks
* The references are duplicated here to ensure that they are included in the
* emitted declaration files. as well as available in the source code for IDEs
* during development.
*/
/// <reference path="events.d.ts" preserve="true" />
/// <reference path="virtuals.d.ts" preserve="true" />
import type { IconifyJSON } from '@iconify/types';
import type { AstroIntegration } from 'astro';
type Options = {
/**
* Path to a custom CSS file to be included in the build.
* Can be used to overwrite the default styles by redefining the CSS variables.
*
* @link https://ui.studiocms.dev/docs/guides/customization/
*/
customCss?: string;
/**
* Disable CSS Generation and require manual addition of the global CSS
*
* @example
* ```ts
* import 'studiocms:ui/global-css';
* ```
*/
noInjectCSS?: boolean;
/**
* Disables the CSS reset. Can be manually included.
*
* @example
* ```ts
* import 'studiocms:ui/reset-css';
* ```
*/
noInjectResetCSS?: boolean;
/**
* Allows the ability to add custom icons to the Icon component.
*
* @example:
* ```ts
* import { icons as heroicons } from '@iconify-json/heroicons';
*
* {
* icons: {
* heroicons,
* // OR
* 'custom-heroicons': heroicons
* }
*/
icons?: Record<string, IconifyJSON>;
};
type IconifyCollections = {
collections: Record<string, IconifyJSON>;
collectionNames: string[];
integrationCollections: string | undefined;
availableIcons: string[];
};
export declare function createIconifyCollection(icons?: Record<string, IconifyJSON>): IconifyCollections;
/**
* The Astro integration for StudioCMS UI.
*
* @see https://ui.studiocms.dev
* @param {Options} [options] - The options for the integration.
* @returns {AstroIntegration} The Astro integration object.
*/
export default function integration(options?: Options): AstroIntegration;
export {};