snowballtools-base/packages/backend/src/config.ts
2024-10-15 18:20:11 +05:30

71 lines
1.2 KiB
TypeScript

export interface SessionConfig {
secret: string;
appOriginUrl: string;
trustProxy: boolean;
domain: string;
}
export interface ServerConfig {
host: string;
port: number;
gqlPath?: string;
sessionSecret: string;
appOriginUrl: string;
isProduction: boolean;
session: SessionConfig;
}
export interface DatabaseConfig {
dbPath: string;
}
export interface GitHubConfig {
webhookUrl: string;
oAuth: {
clientId: string;
clientSecret: string;
};
}
export interface RegistryConfig {
restEndpoint: string;
gqlEndpoint: string;
chainId: string;
privateKey: string;
bondId: string;
fetchDeploymentRecordDelay: number;
authority: string;
fee: {
gas: string;
fees: string;
gasPrice: string;
};
}
export interface AuctionConfig {
commitFee: string;
commitsDuration: string;
revealFee: string;
revealsDuration: string;
denom: string;
}
export interface MiscConfig {
projectDomain: string;
}
export interface Config {
server: ServerConfig;
database: DatabaseConfig;
gitHub: GitHubConfig;
registryConfig: RegistryConfig;
auction: AuctionConfig;
misc: MiscConfig;
turnkey: {
apiBaseUrl: string;
apiPublicKey: string;
apiPrivateKey: string;
defaultOrganizationId: string;
};
}