@storm-software/workspace-tools
Version:
Tools for managing a Storm workspace, including various Nx generators and executors for common development tasks.
268 lines (264 loc) • 12.1 kB
text/typescript
import * as z from 'zod/v4';
/**
* Storm Workspace config values used during various dev-ops processes. It represents the config of the entire monorepo.
*/
declare const stormWorkspaceConfigSchema: z.ZodObject<{
$schema: z.ZodDefault<z.ZodString>;
extends: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>>;
name: z.ZodOptional<z.ZodString>;
namespace: z.ZodOptional<z.ZodString>;
organization: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
name: z.ZodString;
description: z.ZodOptional<z.ZodString>;
logo: z.ZodOptional<z.ZodString>;
icon: z.ZodOptional<z.ZodString>;
url: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodString]>>;
repository: z.ZodOptional<z.ZodString>;
license: z.ZodDefault<z.ZodString>;
homepage: z.ZodOptional<z.ZodString>;
docs: z.ZodOptional<z.ZodString>;
portal: z.ZodOptional<z.ZodString>;
licensing: z.ZodOptional<z.ZodString>;
contact: z.ZodOptional<z.ZodString>;
support: z.ZodOptional<z.ZodString>;
branch: z.ZodDefault<z.ZodString>;
preid: z.ZodOptional<z.ZodString>;
owner: z.ZodDefault<z.ZodString>;
bot: z.ZodObject<{
name: z.ZodDefault<z.ZodString>;
email: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
release: z.ZodObject<{
banner: z.ZodDefault<z.ZodString>;
header: z.ZodOptional<z.ZodString>;
footer: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
account: z.ZodObject<{
twitter: z.ZodDefault<z.ZodString>;
discord: z.ZodDefault<z.ZodString>;
telegram: z.ZodDefault<z.ZodString>;
slack: z.ZodDefault<z.ZodString>;
medium: z.ZodDefault<z.ZodString>;
github: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
error: z.ZodObject<{
codesFile: z.ZodDefault<z.ZodString>;
url: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
mode: z.ZodDefault<z.ZodEnum<{
development: "development";
staging: "staging";
production: "production";
}>>;
workspaceRoot: z.ZodString;
externalPackagePatterns: z.ZodDefault<z.ZodArray<z.ZodString>>;
skipCache: z.ZodDefault<z.ZodBoolean>;
directories: z.ZodObject<{
cache: z.ZodOptional<z.ZodString>;
data: z.ZodOptional<z.ZodString>;
config: z.ZodOptional<z.ZodString>;
temp: z.ZodOptional<z.ZodString>;
log: z.ZodOptional<z.ZodString>;
build: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
packageManager: z.ZodDefault<z.ZodEnum<{
npm: "npm";
yarn: "yarn";
pnpm: "pnpm";
bun: "bun";
}>>;
timezone: z.ZodDefault<z.ZodString>;
locale: z.ZodDefault<z.ZodString>;
logLevel: z.ZodDefault<z.ZodEnum<{
error: "error";
success: "success";
info: "info";
fatal: "fatal";
silent: "silent";
warn: "warn";
debug: "debug";
trace: "trace";
all: "all";
}>>;
skipConfigLogging: z.ZodOptional<z.ZodBoolean>;
registry: z.ZodDefault<z.ZodObject<{
github: z.ZodOptional<z.ZodString>;
npm: z.ZodOptional<z.ZodString>;
cargo: z.ZodOptional<z.ZodString>;
cyclone: z.ZodOptional<z.ZodString>;
container: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
configFile: z.ZodDefault<z.ZodNullable<z.ZodString>>;
colors: z.ZodUnion<[z.ZodUnion<[z.ZodObject<{
dark: z.ZodDefault<z.ZodString>;
light: z.ZodDefault<z.ZodString>;
brand: z.ZodDefault<z.ZodString>;
alternate: z.ZodOptional<z.ZodString>;
accent: z.ZodOptional<z.ZodString>;
link: z.ZodOptional<z.ZodString>;
help: z.ZodDefault<z.ZodString>;
success: z.ZodDefault<z.ZodString>;
info: z.ZodDefault<z.ZodString>;
warning: z.ZodDefault<z.ZodString>;
danger: z.ZodDefault<z.ZodString>;
fatal: z.ZodOptional<z.ZodString>;
positive: z.ZodDefault<z.ZodString>;
negative: z.ZodDefault<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
dark: z.ZodObject<{
foreground: z.ZodDefault<z.ZodString>;
background: z.ZodDefault<z.ZodString>;
brand: z.ZodDefault<z.ZodString>;
alternate: z.ZodOptional<z.ZodString>;
accent: z.ZodOptional<z.ZodString>;
link: z.ZodOptional<z.ZodString>;
help: z.ZodDefault<z.ZodString>;
success: z.ZodDefault<z.ZodString>;
info: z.ZodDefault<z.ZodString>;
warning: z.ZodDefault<z.ZodString>;
danger: z.ZodDefault<z.ZodString>;
fatal: z.ZodOptional<z.ZodString>;
positive: z.ZodDefault<z.ZodString>;
negative: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
light: z.ZodObject<{
foreground: z.ZodDefault<z.ZodString>;
background: z.ZodDefault<z.ZodString>;
brand: z.ZodDefault<z.ZodString>;
alternate: z.ZodOptional<z.ZodString>;
accent: z.ZodOptional<z.ZodString>;
link: z.ZodOptional<z.ZodString>;
help: z.ZodDefault<z.ZodString>;
success: z.ZodDefault<z.ZodString>;
info: z.ZodDefault<z.ZodString>;
warning: z.ZodDefault<z.ZodString>;
danger: z.ZodDefault<z.ZodString>;
fatal: z.ZodOptional<z.ZodString>;
positive: z.ZodDefault<z.ZodString>;
negative: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
}, z.core.$strip>]>, z.ZodUnion<readonly [z.ZodObject<{
base: z.ZodUnion<[z.ZodObject<{
dark: z.ZodDefault<z.ZodString>;
light: z.ZodDefault<z.ZodString>;
brand: z.ZodDefault<z.ZodString>;
alternate: z.ZodOptional<z.ZodString>;
accent: z.ZodOptional<z.ZodString>;
link: z.ZodOptional<z.ZodString>;
help: z.ZodDefault<z.ZodString>;
success: z.ZodDefault<z.ZodString>;
info: z.ZodDefault<z.ZodString>;
warning: z.ZodDefault<z.ZodString>;
danger: z.ZodDefault<z.ZodString>;
fatal: z.ZodOptional<z.ZodString>;
positive: z.ZodDefault<z.ZodString>;
negative: z.ZodDefault<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
dark: z.ZodObject<{
foreground: z.ZodDefault<z.ZodString>;
background: z.ZodDefault<z.ZodString>;
brand: z.ZodDefault<z.ZodString>;
alternate: z.ZodOptional<z.ZodString>;
accent: z.ZodOptional<z.ZodString>;
link: z.ZodOptional<z.ZodString>;
help: z.ZodDefault<z.ZodString>;
success: z.ZodDefault<z.ZodString>;
info: z.ZodDefault<z.ZodString>;
warning: z.ZodDefault<z.ZodString>;
danger: z.ZodDefault<z.ZodString>;
fatal: z.ZodOptional<z.ZodString>;
positive: z.ZodDefault<z.ZodString>;
negative: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
light: z.ZodObject<{
foreground: z.ZodDefault<z.ZodString>;
background: z.ZodDefault<z.ZodString>;
brand: z.ZodDefault<z.ZodString>;
alternate: z.ZodOptional<z.ZodString>;
accent: z.ZodOptional<z.ZodString>;
link: z.ZodOptional<z.ZodString>;
help: z.ZodDefault<z.ZodString>;
success: z.ZodDefault<z.ZodString>;
info: z.ZodDefault<z.ZodString>;
warning: z.ZodDefault<z.ZodString>;
danger: z.ZodDefault<z.ZodString>;
fatal: z.ZodOptional<z.ZodString>;
positive: z.ZodDefault<z.ZodString>;
negative: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
}, z.core.$strip>]>;
}, z.core.$strip>, z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodObject<{
dark: z.ZodDefault<z.ZodString>;
light: z.ZodDefault<z.ZodString>;
brand: z.ZodDefault<z.ZodString>;
alternate: z.ZodOptional<z.ZodString>;
accent: z.ZodOptional<z.ZodString>;
link: z.ZodOptional<z.ZodString>;
help: z.ZodDefault<z.ZodString>;
success: z.ZodDefault<z.ZodString>;
info: z.ZodDefault<z.ZodString>;
warning: z.ZodDefault<z.ZodString>;
danger: z.ZodDefault<z.ZodString>;
fatal: z.ZodOptional<z.ZodString>;
positive: z.ZodDefault<z.ZodString>;
negative: z.ZodDefault<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
dark: z.ZodObject<{
foreground: z.ZodDefault<z.ZodString>;
background: z.ZodDefault<z.ZodString>;
brand: z.ZodDefault<z.ZodString>;
alternate: z.ZodOptional<z.ZodString>;
accent: z.ZodOptional<z.ZodString>;
link: z.ZodOptional<z.ZodString>;
help: z.ZodDefault<z.ZodString>;
success: z.ZodDefault<z.ZodString>;
info: z.ZodDefault<z.ZodString>;
warning: z.ZodDefault<z.ZodString>;
danger: z.ZodDefault<z.ZodString>;
fatal: z.ZodOptional<z.ZodString>;
positive: z.ZodDefault<z.ZodString>;
negative: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
light: z.ZodObject<{
foreground: z.ZodDefault<z.ZodString>;
background: z.ZodDefault<z.ZodString>;
brand: z.ZodDefault<z.ZodString>;
alternate: z.ZodOptional<z.ZodString>;
accent: z.ZodOptional<z.ZodString>;
link: z.ZodOptional<z.ZodString>;
help: z.ZodDefault<z.ZodString>;
success: z.ZodDefault<z.ZodString>;
info: z.ZodDefault<z.ZodString>;
warning: z.ZodDefault<z.ZodString>;
danger: z.ZodDefault<z.ZodString>;
fatal: z.ZodOptional<z.ZodString>;
positive: z.ZodDefault<z.ZodString>;
negative: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
}, z.core.$strip>]>>]>]>;
extensions: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>>;
}, z.core.$strip>;
type TStormWorkspaceConfig = z.infer<typeof stormWorkspaceConfigSchema>;
/**
* The Storm workspace's configuration object
*
* @remarks
* This type is used to define the configuration object for the entire Storm workspace/monorepo. The value is extracted from the `storm-workspace.json` file in the workspace root and the currently configuration environment variables. The value can be obtained by calling `getWorkspaceConfig()` in `@storm-software/config-tools`.
*
* @deprecated
* This type is deprecated and will be removed in the next major version. Use {@link StormWorkspaceConfig} instead.
*/
type StormConfig<TExtensionName extends keyof TStormWorkspaceConfig["extensions"] = keyof TStormWorkspaceConfig["extensions"], TExtensionConfig extends TStormWorkspaceConfig["extensions"][TExtensionName] = TStormWorkspaceConfig["extensions"][TExtensionName]> = TStormWorkspaceConfig & {
extensions: (TStormWorkspaceConfig["extensions"] & {
[extensionName in TExtensionName]: TExtensionConfig;
}) | NonNullable<Record<string, any>>;
};
/**
* The Storm workspace's configuration object
*
* @remarks
* This type is used to define the configuration object for the entire Storm workspace/monorepo. The value is extracted from the `storm-workspace.json` file in the workspace root and the currently configuration environment variables. The value can be obtained by calling `getWorkspaceConfig()` in `@storm-software/config-tools`.
*/
type StormWorkspaceConfig<TExtensionName extends keyof TStormWorkspaceConfig["extensions"] = keyof TStormWorkspaceConfig["extensions"], TExtensionConfig extends TStormWorkspaceConfig["extensions"][TExtensionName] = TStormWorkspaceConfig["extensions"][TExtensionName]> = StormConfig<TExtensionName, TExtensionConfig>;
export type { StormWorkspaceConfig as S };