/** * ⚠️ DO NOT EDIT ⚠️ * These types are duplicated from packages/gatsby/src/bootstrap/load-plugins/types.ts * If you edit this file, make sure to edit that file too!!! * They are duplicate to avoid a circular dependency between gatsby-plugin-utils <=> gatsby <=> gatsby-plugin-utils * See gatsbyjs/gatsby#27578 */ export interface IRawSiteConfig { plugins?: Array; } export interface ISiteConfig extends IRawSiteConfig { plugins?: Array; } export interface IPluginInfo { /** Unique ID describing a plugin */ id: string; /** The absolute path to the plugin */ resolve: string; /** The plugin name */ name: string; /** The plugin version (can be content hash) */ version: string; /** Options passed to the plugin */ pluginOptions?: IPluginInfoOptions; module?: any; modulePath?: string; } export interface IPluginInfoOptions { plugins?: Array; path?: string; [option: string]: unknown; } export interface IFlattenedPlugin extends IPluginInfo { skipSSR?: boolean; ssrAPIs: Array; nodeAPIs: Array; browserAPIs: Array; } export interface IPluginRefObject { resolve: string; options?: IPluginRefOptions; parentDir?: string; subPluginPaths?: Array; module?: any; modulePath?: string; } export type PluginRef = string | IPluginRefObject; export interface IPluginRefOptions { plugins?: Array; path?: string; [option: string]: unknown; }