-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathcontext.ts
More file actions
80 lines (77 loc) · 2.68 KB
/
context.ts
File metadata and controls
80 lines (77 loc) · 2.68 KB
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
import type { RuntimeParams } from "@dafthunk/runtime";
import { JWTTokenPayload } from "@dafthunk/types";
import type { FFmpegContainer } from "./containers/ffmpeg-container";
import type { AgentRunner } from "./durable-objects/agent-runner";
import { DatabaseDO } from "./durable-objects/database-do";
import type { WorkflowAgent } from "./durable-objects/workflow-agent";
export interface Bindings {
DB: D1Database;
KV: KVNamespace;
RATE_LIMIT_DEFAULT: RateLimit;
RATE_LIMIT_AUTH: RateLimit;
RATE_LIMIT_EXECUTE: RateLimit;
EXECUTE: Workflow<RuntimeParams>;
WORKFLOW_AGENT: DurableObjectNamespace<WorkflowAgent>;
DATABASE: DurableObjectNamespace<DatabaseDO>;
AGENT_RUNNER: DurableObjectNamespace<AgentRunner>;
FFMPEG_CONTAINER?: DurableObjectNamespace<FFmpegContainer>;
DUCKDB_SANDBOX?: DurableObjectNamespace<any>;
WORKFLOW_QUEUE: Queue;
RESSOURCES: R2Bucket;
DATASETS: R2Bucket;
DATASETS_AUTORAG: string;
AI: Ai;
AI_OPTIONS: AiOptions;
LOADER?: any; // worker_loaders binding for Code Mode sandbox
SEND_EMAIL?: SendEmail;
BROWSER?: Fetcher;
EXECUTIONS: AnalyticsEngineDataset;
WEB_HOST: string;
WEBSITE_URL: string;
EMAIL_DOMAIN: string;
JWT_SECRET: string;
CLOUDFLARE_ENV: string;
CLOUDFLARE_ACCOUNT_ID: string;
CLOUDFLARE_API_TOKEN: string;
CLOUDFLARE_AI_GATEWAY_ID?: string;
GITHUB_CLIENT_ID?: string;
GITHUB_CLIENT_SECRET?: string;
GOOGLE_CLIENT_ID?: string;
GOOGLE_CLIENT_SECRET?: string;
INTEGRATION_GOOGLE_MAIL_CLIENT_ID?: string;
INTEGRATION_GOOGLE_MAIL_CLIENT_SECRET?: string;
INTEGRATION_GOOGLE_CALENDAR_CLIENT_ID?: string;
INTEGRATION_GOOGLE_CALENDAR_CLIENT_SECRET?: string;
INTEGRATION_DISCORD_CLIENT_ID?: string;
INTEGRATION_DISCORD_CLIENT_SECRET?: string;
INTEGRATION_GITHUB_CLIENT_ID?: string;
INTEGRATION_GITHUB_CLIENT_SECRET?: string;
INTEGRATION_REDDIT_CLIENT_ID?: string;
INTEGRATION_REDDIT_CLIENT_SECRET?: string;
INTEGRATION_LINKEDIN_CLIENT_ID?: string;
INTEGRATION_LINKEDIN_CLIENT_SECRET?: string;
TWILIO_ACCOUNT_SID?: string;
TWILIO_AUTH_TOKEN?: string;
TWILIO_PHONE_NUMBER?: string;
HUGGINGFACE_API_KEY?: string;
REPLICATE_API_TOKEN?: string;
R2_ACCESS_KEY_ID?: string;
R2_SECRET_ACCESS_KEY?: string;
R2_BUCKET_NAME?: string;
SECRET_MASTER_KEY: string;
STRIPE_SECRET_KEY?: string;
STRIPE_WEBHOOK_SECRET?: string;
STRIPE_PRICE_ID_PRO?: string;
STRIPE_METER_ID?: string;
}
export interface Variables {
// JWT payload containing authenticated user data
jwtPayload?: JWTTokenPayload;
// Organization ID for the current request context
organizationId?: string;
}
// Type for Hono app context combining Env and Variables
export type ApiContext = {
Bindings: Bindings;
Variables: Variables;
};