From 96713ece480f62d93f5a57e8d06af4e5a1a8f7c1 Mon Sep 17 00:00:00 2001 From: Arne Welzel Date: Sun, 8 May 2022 15:00:28 +0200 Subject: [PATCH] scripts: Add a basic zeek.d.ts file for type checking This should allow to run tsc ./scripts/zeek.d.ts ./script.ts for some basic type checking of the global zeek object. --- scripts/zeek.d.ts | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 scripts/zeek.d.ts diff --git a/scripts/zeek.d.ts b/scripts/zeek.d.ts new file mode 100644 index 0000000..4d74bfa --- /dev/null +++ b/scripts/zeek.d.ts @@ -0,0 +1,26 @@ +declare namespace zeek { + + interface HandlerOptions { + priority?: number; + } + + type EventHandler = (...args: any) => void; + function on(name: string, handler: EventHandler): void; + function on(name: string, options: HandlerOptions, handler: EventHandler): void; + + type HookHandler = (...args: any) => boolean|void; + function hook(name: string, handler: HookHandler): void; + function hook(name: string, options: HandlerOptions, handler: HookHandler): void; + + function invoke(name: string, args?: any[]): any; + + function event(name: string, args?: any[]): void; + + const ATTR_LOG: number; + type AttributeMask = number; + function select_fields(rec: object, mask: AttributeMask): object; + + function flatten(rec: object): object; + + const global_vars: {[name: string]: any}; +}