import { NotionOperationPluginFunction } from '@nishans/operations'; import { FilterType, FilterTypes } from '@nishans/traverser'; import { INotionCache, INotionUser, NotionCacheInitializerTracker } from '@nishans/types'; import { INotionCoreOptions } from '../'; import NotionUser from './NotionUser'; export default class Nishan { #private; token: string; interval: number; logger: boolean; notion_operation_plugins: NotionOperationPluginFunction[]; cache: INotionCache; cache_init_tracker: NotionCacheInitializerTracker; constructor(arg: Pick & { notion_operation_plugins?: INotionCoreOptions['notion_operation_plugins']; cache?: INotionCache; }); getProps(): { token: string; cache: INotionCache; interval: number; logger: boolean; notion_operation_plugins: NotionOperationPluginFunction[]; cache_init_tracker: NotionCacheInitializerTracker; }; /** * Get `INotionUser` and return `NotionUser` by the `args` param * @param args An string id, a predicate passed the INotionUser or undefined to indicate everything */ getNotionUser(arg?: FilterType): Promise; /** * Get `INotionUser[]` and return `NotionUser[]` by the `args` param * @param args An array of string ids, a predicate passed the INotionUser or undefined to indicate everything */ getNotionUsers(args?: FilterTypes, multiple?: boolean): Promise; getPagesById(ids: string[]): Promise; }