datainout
Version:
Import and reports data
44 lines (42 loc) • 1.48 kB
TypeScript
declare class ContextEventHook {
private context;
after(callback: (ctx: any) => void): void;
before(callback: (ctx: any) => void): this;
}
declare class ContextEventHandler {
private groupContext;
private setEvent;
get WorkBook(): ContextEventHook;
get Sheet(): ContextEventHook;
get Row(): ContextEventHook;
get Header(): ContextEventHook;
get Footer(): ContextEventHook;
get Error(): ContextEventHook;
}
declare abstract class HookProvider {
abstract do(context: ContextEventHandler): void;
}
type EventHandlerType = {
workBook: () => void;
endWorkBook: () => void;
sheet: (sheetName?: string) => void;
endSheet: (sheetName?: string) => void;
onRow: () => void;
endRow: () => void;
header: (sheetName?: string) => void;
endHeader: (sheetName?: string) => void;
footer: (sheetName?: string) => void;
endFooter: (sheetName?: string) => void;
/** Handle error. Return false to cancel import, otherhands return true */
error: (error: Error) => boolean;
};
declare class EventHandler {
private listEvents;
onFile(func: EventHandlerType["workBook"]): void;
endFile(func: EventHandlerType["endWorkBook"]): void;
begin(func: EventHandlerType["sheet"]): void;
end(func: EventHandlerType["endSheet"]): void;
error(func: EventHandlerType["error"]): void;
private buildHook;
}
export { ContextEventHandler, EventHandler, type EventHandlerType, HookProvider };