From b8cd58ef25ccd6a88fa515f94243a92c3d592de4 Mon Sep 17 00:00:00 2001 From: svozza Date: Tue, 18 Nov 2025 22:09:25 +0000 Subject: [PATCH 1/2] use global namespace when defining awslambda InvokeStore global type --- src/global.d.ts | 9 --------- src/invoke-store.ts | 15 +++++++-------- 2 files changed, 7 insertions(+), 17 deletions(-) delete mode 100644 src/global.d.ts diff --git a/src/global.d.ts b/src/global.d.ts deleted file mode 100644 index 1c1ecf5..0000000 --- a/src/global.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { InvokeStore } from "./invoke-store.ts"; - -declare global { - var awslambda: { - InvokeStore?: typeof InvokeStore; - }; -} - -export {}; diff --git a/src/invoke-store.ts b/src/invoke-store.ts index cc3d3a5..45c15d8 100644 --- a/src/invoke-store.ts +++ b/src/invoke-store.ts @@ -4,6 +4,12 @@ interface Context { [key: symbol]: unknown; } +declare global { + namespace awslambda { + let InvokeStore: InvokeStoreBase | undefined; + } +} + const PROTECTED_KEYS = { REQUEST_ID: Symbol.for("_AWS_LAMBDA_REQUEST_ID"), X_RAY_TRACE_ID: Symbol.for("_AWS_LAMBDA_X_RAY_TRACE_ID"), @@ -14,13 +20,6 @@ const NO_GLOBAL_AWS_LAMBDA = ["true", "1"].includes( process.env?.AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA ?? "", ); -declare global { - var awslambda: { - InvokeStore?: InvokeStoreBase; - [key: string]: unknown; - }; -} - if (!NO_GLOBAL_AWS_LAMBDA) { globalThis.awslambda = globalThis.awslambda || {}; } @@ -188,7 +187,7 @@ export namespace InvokeStore { if (globalThis.awslambda?.InvokeStore) { delete globalThis.awslambda.InvokeStore; } - globalThis.awslambda = {}; + globalThis.awslambda = {InvokeStore: undefined}; }, } : undefined; From a8409843d47ff64cdce4feea1ef77baefc566e4f Mon Sep 17 00:00:00 2001 From: svozza Date: Tue, 18 Nov 2025 22:18:18 +0000 Subject: [PATCH 2/2] Add changeset --- .changeset/yellow-taxes-sit.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/yellow-taxes-sit.md diff --git a/.changeset/yellow-taxes-sit.md b/.changeset/yellow-taxes-sit.md new file mode 100644 index 0000000..0aebf26 --- /dev/null +++ b/.changeset/yellow-taxes-sit.md @@ -0,0 +1,5 @@ +--- +"@aws/lambda-invoke-store": patch +--- + +use global namespace when defining awslambda InvokeStore global typ