import { fabric } from 'fabric'; /** * Extend an exiting method. * * @param shape * @param methodName * @param callback */ export declare function extendMethod>(shape: T, methodName: M, callback: (this: InstanceType, ...args: any) => any): (this: InstanceType) => any; /** * Create an extension. * @param callback */ export declare function extension(name: string, callback: (instance: typeof fabric) => void): (instance?: typeof fabric) => void; /** * Normalize the key combinations of shortcuts. * * @param keyCombination */ export declare const normalizeShortcutKey: (keyCombination: string) => string; /** * Normalize the key combinations of keyboard events. * * @param keyCombination */ export declare const normalizeEventKey: (event: { ctrlKey: boolean; metaKey: boolean; shiftKey: boolean; altKey: boolean; key?: string; }) => string; declare module 'fabric' { namespace fabric { interface IUtil { installedExtensions: { [key: string]: boolean; }; } } }