File size: 643 Bytes
13894da
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
const ENV_VARS = [
  'GOOGLE_GENERATIVE_AI_API_KEY',
] as const;

type EnvType = { [K in typeof ENV_VARS[number]]: string };

for (const envVar of ENV_VARS) {
  if (!Deno.env.get(envVar)) {
    throw new Error(`Environment variable "${envVar}" is not set.`);
  }
}

declare global {
  namespace Deno {
    interface Env {
      delete<K extends keyof EnvType>(key: K): void;
      get<K extends keyof EnvType>(key: K): EnvType[K];
      has<K extends keyof EnvType>(key: K): boolean;
      set<K extends keyof EnvType>(key: K): void;
      toObject(): EnvType;
    }
  }

  namespace NodeJS {
    interface ProcessEnv extends EnvType {}
  }
}