import { InjectionToken } from "@angular/core"; import { Observable } from "rxjs"; export const CLICK_INTERCEPTOR_INJECTOR = new InjectionToken('CLICK_INTERCEPTOR_INJECTOR') export type TClickInterceptorConfig = { last?: boolean } export interface ClickInterceptor{ register: (interceptorFunction: (ev: any) => boolean, config?: TClickInterceptorConfig) => void deregister: (interceptorFunction: (ev: any) => any) => void } export const CONTEXT_MENU_ITEM_INJECTOR = new InjectionToken('CONTEXT_MENU_ITEM_INJECTOR') export type TContextMenu = { register: (fn: T) => void deregister: (fn: (fn: T) => void) => void } export const DARKTHEME = new InjectionToken>('DARKTHEME')