import type { PluginInstallation, PluginUserSetting } from '../../../../types/plugins'; import type { PluginListing, PluginsActions } from '../types'; /** * Everything the plugins page needs. Core's `Viewer` renders the page with no * props, so it reads through the same `ApiAdapter` port every other domain uses. * * Four sources cross here: the manifests this build knows about (from * `manifests.ts`, not `installed.ts`, so plugin components stay out), whatever the * deployment mounted on disk, `PluginInstallation` for the org and * `PluginUserSetting` for this user. * * A manifest with no install row shows as `available`. An install row with no * manifest is dropped — normal after a downgrade. */ export declare function usePluginsData(override?: PluginListing[]): { listings: PluginListing[]; isLoading: boolean; }; /** The writes, bound to the API, shaped to the page's `PluginsActions` port. */ export declare function usePluginsActions(override?: PluginsActions): PluginsActions; export type { PluginInstallation, PluginUserSetting }; //# sourceMappingURL=usePluginsData.d.ts.map