UNPKG

1.32 kBTypeScriptView Raw
1import { IPlugin, IRepoPlugin, PluginType, IStorePlugin, IIndexerPlugin, IFinderPlugin, IRepoSupportPlugin } from "./Types";
2import { Repo } from "./Repo";
3export declare function assert(test: any, msg?: string): void;
4export declare function isNumberOrString(o: any): o is string | number;
5export declare function isArrayType(type: any): boolean;
6/**
7 * Check the type of a plugin
8 *
9 * @param plugin
10 * @param type
11 * @returns {boolean}
12 */
13export declare function isPluginOfType(plugin: IPlugin, type: PluginType): boolean;
14export declare function isRepoPlugin(plugin: IPlugin): plugin is IRepoPlugin<any>;
15export declare function isStorePlugin(plugin: IPlugin): plugin is IStorePlugin;
16export declare function isIndexerPlugin(plugin: IPlugin): plugin is IIndexerPlugin;
17export declare function isFinderPlugin(plugin: IPlugin): plugin is IFinderPlugin;
18export declare function PromiseMap<T>(values: T[], mapper: (value: T) => any): Promise<any[]>;
19export declare function PluginFilter<P extends IPlugin>(plugins: IPlugin[], type: PluginType): P[];
20export declare function isInstanceType<T>(val: any, type: {
21 new (): T;
22}): val is T;
23export declare function includesUnlessEmpty(arr: any[], val: any): boolean;
24export declare function repoAttachIfSupported(repo: Repo<any>, plugin: IRepoSupportPlugin): Repo<any>;