Optional
$env
$env?: Partial<
Record<
| "local"
| "development"
| "staging"
| "production"
| "production-au"
| "test",
objectInputType<
{
api: ZodDefault<
ZodObject<
{
config: ZodDefault<
ZodObject<
{
ccu: ...;
celery: ...;
connect: ...;
django: ...;
elasticSearch: ...;
langchain: ...;
newRelic: ...;
phone: ...;
rag: ...;
sentry: ...;
},
"strip",
ZodTypeAny,
{
ccu: ...;
celery: ...;
connect: ...;
django: ...;
elasticSearch: ...;
langchain: ...;
newRelic: ...;
phone: ...;
rag: ...;
sentry: ...;
},
{
ccu?: ...;
celery?: ...;
connect?: ...;
django?: ...;
elasticSearch?: ...;
langchain?: ...;
newRelic?: ...;
phone?: ...;
rag?: ...;
sentry?: ...;
},
>,
>;
secrets: ZodDefault<
ZodObject<
{
aws: ...;
cloudfront: ...;
connectFirst: ...;
django: ...;
ipstack: ...;
jwt: ...;
langchain: ...;
notifications: ...;
postgres: ...;
redis: ...;
saml: ...;
stripe: ...;
zendesk: ...;
},
"passthrough",
ZodTypeAny,
objectOutputType<(...), (...), (...)>,
objectInputType<(...), (...), (...)>,
>,
>;
},
"strip",
ZodTypeAny,
{
config: {
ccu: {
apiUrl: string;
forceDocker: boolean;
newrelicDisable: boolean;
webUrl: string;
};
celery: { alwaysEager: boolean };
connect: { instanceId: string };
django: {
accountAllowRegistration: boolean;
allowedHosts: (...)[];
corsOriginWhitelist: (...)[];
csrfCookieSecure: boolean;
csrfTrustedOrigins: (...)[];
emailBackend: string;
secureSslRedirect: boolean;
sessionCookieSecure: boolean;
settingsModule: string;
};
elasticSearch: { host: string };
langchain: { endpoint: string; project: string; tracingV2: boolean };
newRelic: {
configFile: string;
environment?: (...) | (...) | (...) | (...) | (...) | (...) | (...);
};
phone: { checkTimezone: boolean };
rag: {
chatModel: string;
documentEmbedModel: string;
queryEmbedModel: string;
};
sentry: { traceExcludeUrls: (...)[] };
};
secrets: {
aws?: (...)
| (...);
cloudfront?: (...) | (...);
connectFirst?: (...) | (...);
django?: (...) | (...);
ipstack?: (...) | (...);
jwt?: (...) | (...);
langchain?: (...) | (...);
notifications?: (...) | (...);
postgres?: (...) | (...);
redis?: (...) | (...);
saml?: (...) | (...);
stripe?: (...) | (...);
zendesk?: (...) | (...);
} & { [k: string]: unknown };
},
{
config?: {
ccu?: (...)
| (...);
celery?: (...) | (...);
connect?: (...) | (...);
django?: (...) | (...);
elasticSearch?: (...) | (...);
langchain?: (...) | (...);
newRelic?: (...) | (...);
phone?: (...) | (...);
rag?: (...) | (...);
sentry?: (...) | (...);
};
secrets?: objectInputType<
{
aws: ...;
cloudfront: ...;
connectFirst: ...;
django: ...;
ipstack: ...;
jwt: ...;
langchain: ...;
notifications: ...;
postgres: ...;
redis: ...;
saml: ...;
stripe: ...;
zendesk: ...;
},
ZodTypeAny,
"passthrough",
>;
},
>,
>;
ccuStage: ZodEnum<
[
"local",
"development",
"staging",
"production",
"production-au",
"test",
],
>;
cdkEnvironment: ZodDefault<
ZodObject<
{ account: ZodDefault<ZodString>; region: ZodDefault<ZodString> },
"strip",
ZodTypeAny,
{ account: string; region: string },
{ account?: string; region?: string },
>,
>;
pipeline: ZodDefault<
ZodObject<
{
appRegistryTag: ZodDefault<ZodString>;
assetsBucketName: ZodDefault<ZodString>;
repositories: ZodDefault<ZodArray<ZodString, "many">>;
},
"strip",
ZodTypeAny,
{
appRegistryTag: string;
assetsBucketName: string;
repositories: string[];
},
{
appRegistryTag?: string;
assetsBucketName?: string;
repositories?: string[];
},
>,
>;
},
ZodTypeAny,
"passthrough",
>,
>,
>
Optional
api
api?: {
config?: {
ccu?: {
apiUrl?: string;
forceDocker?: boolean;
newrelicDisable?: boolean;
webUrl?: string;
};
celery?: { alwaysEager?: boolean };
connect?: { instanceId?: string };
django?: {
accountAllowRegistration?: boolean;
allowedHosts?: string | string[];
corsOriginWhitelist?: string[];
csrfCookieSecure?: boolean;
csrfTrustedOrigins?: string[];
emailBackend?: string;
secureSslRedirect?: boolean;
sessionCookieSecure?: boolean;
settingsModule?: string;
};
elasticSearch?: { host?: string };
langchain?: { endpoint?: string; project?: string; tracingV2?: boolean };
newRelic?: {
configFile?: string;
environment?:
| "local"
| "development"
| "staging"
| "production"
| "production-au"
| "test";
};
phone?: { checkTimezone?: boolean };
rag?: {
chatModel?: string;
documentEmbedModel?: string;
queryEmbedModel?: string;
};
sentry?: { traceExcludeUrls?: string
| string[] };
};
secrets?: objectInputType<
{
aws: ZodOptional<
ZodObject<
{
accessKeyId: ZodString;
defaultRegion: ZodString;
dynamoStage: ZodString;
secretAccessKey: ZodString;
},
"strip",
ZodTypeAny,
{
accessKeyId: string;
defaultRegion: string;
dynamoStage: string;
secretAccessKey: string;
},
{
accessKeyId: string;
defaultRegion: string;
dynamoStage: string;
secretAccessKey: string;
},
>,
>;
cloudfront: ZodOptional<
ZodObject<
{ privateKey: ZodString; publicKey: ZodString },
"strip",
ZodTypeAny,
{ privateKey: string; publicKey: string },
{ privateKey: string; publicKey: string },
>,
>;
connectFirst: ZodOptional<
ZodObject<
{ password: ZodDefault<ZodString> },
"strip",
ZodTypeAny,
{ password: string },
{ password?: string },
>,
>;
django: ZodOptional<
ZodDefault<
ZodObject<
{
adminUrl: ZodDefault<ZodString>;
mandrill: ZodDefault<ZodObject<(...), (...), (...), (...), (...)>>;
secretKey: ZodDefault<ZodString>;
},
"strip",
ZodTypeAny,
{ adminUrl: string; mandrill: { apiKey: string }; secretKey: string },
{ adminUrl?: string; mandrill?: { apiKey: ... }; secretKey?: string },
>,
>,
>;
ipstack: ZodOptional<
ZodDefault<
ZodObject<
{ apiKey: ZodOptional<ZodString> },
"strip",
ZodTypeAny,
{ apiKey?: string },
{ apiKey?: string },
>,
>,
>;
jwt: ZodOptional<
ZodObject<
{ privateKey: ZodString; publicKey: ZodString },
"strip",
ZodTypeAny,
{ privateKey: string; publicKey: string },
{ privateKey: string; publicKey: string },
>,
>;
langchain: ZodOptional<
ZodDefault<
ZodObject<
{ apiKey: ZodOptional<ZodDefault<(...)>> },
"strip",
ZodTypeAny,
{ apiKey?: string },
{ apiKey?: string },
>,
>,
>;
notifications: ZodOptional<
ZodDefault<
ZodObject<
{ slack: ZodDefault<ZodObject<(...), (...), (...), (...), (...)>> },
"strip",
ZodTypeAny,
{
slack: {
chat: { webhookUrl?: ... };
default: { webhookUrl?: ... };
};
},
{ slack?: { chat?: ...; default?: ... } },
>,
>,
>;
postgres: ZodOptional<
ZodDefault<
ZodObject<
{
dbname: ZodString;
host: ZodOptional<ZodString>;
hostReplica: ZodOptional<ZodOptional<(...)>>;
password: ZodOptional<ZodString>;
port: ZodOptional<ZodString>;
user: ZodOptional<ZodString>;
},
"strip",
ZodTypeAny,
{
dbname: string;
host?: string;
hostReplica?: string;
password?: string;
port?: string;
user?: string;
},
{
dbname: string;
host?: string;
hostReplica?: string;
password?: string;
port?: string;
user?: string;
},
>,
>,
>;
redis: ZodOptional<
ZodDefault<
ZodObject<
{ host: ZodString; hostReplicas: ZodDefault<ZodUnion<(...)>> },
"strip",
ZodTypeAny,
{ host: string; hostReplicas: string[] },
{ host: string; hostReplicas?: string | (...)[] },
>,
>,
>;
saml: ZodOptional<
ZodDefault<
ZodObject<
{ awsProvider: ZodString; awsRole: ZodString },
"strip",
ZodTypeAny,
{ awsProvider: string; awsRole: string },
{ awsProvider: string; awsRole: string },
>,
>,
>;
stripe: ZodOptional<
ZodObject<
{ apiKey: ZodString },
"strip",
ZodTypeAny,
{ apiKey: string },
{ apiKey: string },
>,
>;
zendesk: ZodOptional<
ZodObject<
{ apiKey: ZodString },
"strip",
ZodTypeAny,
{ apiKey: string },
{ apiKey: string },
>,
>;
},
ZodTypeAny,
"passthrough",
>;
} = ...