export interface OpenComponentsConfig {
/** JSON schema specification reference */
$schema?: string | null;
/** List of registry URLs where components will be published */
registries?: string[];
/** Development-specific configuration settings */
development?: {
/** Importmap to add to the preview HTML's
section. */
importmap?: {
imports?: Record;
};
/** Additional Express routes to mount on the registry application */
routes?: Array<{
route: string;
method: string;
handler: string;
}>;
/** JavaScript code to be included in the preview HTML's section.
* Can be either a filepath to a JS script or inline JavaScript code.
*/
preload?: string;
/** Fallback configuration for when components cannot be found locally */
fallback?: {
/** URL of the fallback registry to use when components cannot be found locally */
url: string;
/** Whether to use the fallback registry's oc-client-browser.js for previewing components */
client?: boolean;
};
/** Plugin mocking configuration for development */
plugins?: {
/** Dynamic plugin mocks - file paths to JavaScript modules */
dynamic?: Record;
/** Static plugin mocks - static values that will always be returned */
static?: Record;
};
};
/** @deprecated Use development.plugins instead */
mocks?: {
/** @deprecated Use development.plugins instead */
plugins?: {
/** @deprecated Use development.plugins.dynamic instead */
dynamic?: Record;
/** @deprecated Use development.plugins.static instead */
static?: Record;
};
};
}
type ParsedConfig = {
$schema?: string | null;
sourcePath?: string;
registries: string[];
development: {
importmap?: {
imports?: Record;
};
routes?: Array<{
route: string;
method: string;
handler: string;
}>;
preload?: string;
plugins: {
dynamic?: Record;
static?: Record;
};
fallback?: {
url: string;
client?: boolean;
};
};
};
export declare function getOcConfig(folder?: string): ParsedConfig;
export declare function setOcConfig(config: ParsedConfig, path?: string): void;
export {};