dependabit / manifest/src / parseConfig
Function: parseConfig()
ts
function parseConfig(yaml): {
dependencies?: {
issues?: {
aiAgentAssignment?: {
breaking?: string;
enabled: boolean;
major?: string;
minor?: string;
};
assignees: string[];
bodyTemplate?: string;
labels: string[];
titleTemplate: string;
};
monitoring?: {
checkFrequency: "hourly" | "daily" | "weekly" | "monthly";
enabled: boolean;
ignoreChanges: boolean;
severityOverride?: "breaking" | "major" | "minor";
};
schedule?: {
day?: | "monday"
| "tuesday"
| "wednesday"
| "thursday"
| "friday"
| "saturday"
| "sunday";
interval: "hourly" | "daily" | "weekly" | "monthly";
time?: string;
timezone: string;
};
url: string;
}[];
ignore?: {
patterns?: string[];
types?: (
| "reference-implementation"
| "schema"
| "documentation"
| "research-paper"
| "api-example"
| "other")[];
urls?: string[];
useGitExcludes: boolean;
};
issues?: {
aiAgentAssignment?: {
breaking?: string;
enabled: boolean;
major?: string;
minor?: string;
};
assignees: string[];
bodyTemplate?: string;
labels: string[];
titleTemplate: string;
};
llm?: {
maxTokens: number;
model?: string;
provider: "github-copilot" | "claude" | "openai" | "azure-openai";
temperature: number;
};
monitoring?: {
autoUpdate: boolean;
enabled: boolean;
falsePositiveThreshold: number;
};
schedule: {
day?: | "monday"
| "tuesday"
| "wednesday"
| "thursday"
| "friday"
| "saturday"
| "sunday";
interval: "hourly" | "daily" | "weekly" | "monthly";
time?: string;
timezone: string;
};
version: "1";
};Defined in: packages/manifest/src/config.ts:43
Parses a YAML string into a validated DependabitConfig.
Parameters
| Parameter | Type | Description |
|---|---|---|
yaml | string | Raw YAML or JSON string. |
Returns
ts
{
dependencies?: {
issues?: {
aiAgentAssignment?: {
breaking?: string;
enabled: boolean;
major?: string;
minor?: string;
};
assignees: string[];
bodyTemplate?: string;
labels: string[];
titleTemplate: string;
};
monitoring?: {
checkFrequency: "hourly" | "daily" | "weekly" | "monthly";
enabled: boolean;
ignoreChanges: boolean;
severityOverride?: "breaking" | "major" | "minor";
};
schedule?: {
day?: | "monday"
| "tuesday"
| "wednesday"
| "thursday"
| "friday"
| "saturday"
| "sunday";
interval: "hourly" | "daily" | "weekly" | "monthly";
time?: string;
timezone: string;
};
url: string;
}[];
ignore?: {
patterns?: string[];
types?: (
| "reference-implementation"
| "schema"
| "documentation"
| "research-paper"
| "api-example"
| "other")[];
urls?: string[];
useGitExcludes: boolean;
};
issues?: {
aiAgentAssignment?: {
breaking?: string;
enabled: boolean;
major?: string;
minor?: string;
};
assignees: string[];
bodyTemplate?: string;
labels: string[];
titleTemplate: string;
};
llm?: {
maxTokens: number;
model?: string;
provider: "github-copilot" | "claude" | "openai" | "azure-openai";
temperature: number;
};
monitoring?: {
autoUpdate: boolean;
enabled: boolean;
falsePositiveThreshold: number;
};
schedule: {
day?: | "monday"
| "tuesday"
| "wednesday"
| "thursday"
| "friday"
| "saturday"
| "sunday";
interval: "hourly" | "daily" | "weekly" | "monthly";
time?: string;
timezone: string;
};
version: "1";
}Validated config object.
| Name | Type | Defined in |
|---|---|---|
dependencies? | { issues?: { aiAgentAssignment?: { breaking?: string; enabled: boolean; major?: string; minor?: string; }; assignees: string[]; bodyTemplate?: string; labels: string[]; titleTemplate: string; }; monitoring?: { checkFrequency: "hourly" | "daily" | "weekly" | "monthly"; enabled: boolean; ignoreChanges: boolean; severityOverride?: "breaking" | "major" | "minor"; }; schedule?: { day?: | "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday" | "sunday"; interval: "hourly" | "daily" | "weekly" | "monthly"; time?: string; timezone: string; }; url: string; }[] | packages/manifest/src/schema.ts:236 |
ignore? | { patterns?: string[]; types?: ( | "reference-implementation" | "schema" | "documentation" | "research-paper" | "api-example" | "other")[]; urls?: string[]; useGitExcludes: boolean; } | packages/manifest/src/schema.ts:239 |
ignore.patterns? | string[] | packages/manifest/src/schema.ts:243 |
ignore.types? | ( | "reference-implementation" | "schema" | "documentation" | "research-paper" | "api-example" | "other")[] | packages/manifest/src/schema.ts:242 |
ignore.urls? | string[] | packages/manifest/src/schema.ts:241 |
ignore.useGitExcludes | boolean | packages/manifest/src/schema.ts:244 |
issues? | { aiAgentAssignment?: { breaking?: string; enabled: boolean; major?: string; minor?: string; }; assignees: string[]; bodyTemplate?: string; labels: string[]; titleTemplate: string; } | packages/manifest/src/schema.ts:224 |
issues.aiAgentAssignment? | { breaking?: string; enabled: boolean; major?: string; minor?: string; } | packages/manifest/src/schema.ts:184 |
issues.aiAgentAssignment.breaking? | string | packages/manifest/src/schema.ts:187 |
issues.aiAgentAssignment.enabled | boolean | packages/manifest/src/schema.ts:186 |
issues.aiAgentAssignment.major? | string | packages/manifest/src/schema.ts:188 |
issues.aiAgentAssignment.minor? | string | packages/manifest/src/schema.ts:189 |
issues.assignees | string[] | packages/manifest/src/schema.ts:183 |
issues.bodyTemplate? | string | packages/manifest/src/schema.ts:193 |
issues.labels | string[] | packages/manifest/src/schema.ts:182 |
issues.titleTemplate | string | packages/manifest/src/schema.ts:192 |
llm? | { maxTokens: number; model?: string; provider: "github-copilot" | "claude" | "openai" | "azure-openai"; temperature: number; } | packages/manifest/src/schema.ts:222 |
llm.maxTokens | number | packages/manifest/src/schema.ts:176 |
llm.model? | string | packages/manifest/src/schema.ts:175 |
llm.provider | "github-copilot" | "claude" | "openai" | "azure-openai" | packages/manifest/src/schema.ts:172 |
llm.temperature | number | packages/manifest/src/schema.ts:177 |
monitoring? | { autoUpdate: boolean; enabled: boolean; falsePositiveThreshold: number; } | packages/manifest/src/schema.ts:227 |
monitoring.autoUpdate | boolean | packages/manifest/src/schema.ts:230 |
monitoring.enabled | boolean | packages/manifest/src/schema.ts:229 |
monitoring.falsePositiveThreshold | number | packages/manifest/src/schema.ts:231 |
schedule | { day?: | "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday" | "sunday"; interval: "hourly" | "daily" | "weekly" | "monthly"; time?: string; timezone: string; } | packages/manifest/src/schema.ts:223 |
schedule.day? | | "monday" | "tuesday" | "wednesday" | "thursday" | "friday" | "saturday" | "sunday" | packages/manifest/src/schema.ts:160 |
schedule.interval | "hourly" | "daily" | "weekly" | "monthly" | packages/manifest/src/schema.ts:159 |
schedule.time? | string | packages/manifest/src/schema.ts:163 |
schedule.timezone | string | packages/manifest/src/schema.ts:167 |
version | "1" | packages/manifest/src/schema.ts:219 |
Throws
If the parsed data does not satisfy the schema.
Use When
Parsing config from an in-memory string (e.g., fetched from GitHub API).