Skip to content

Commit 120cbbb

Browse files
committed
chore: add config types across the board
1 parent 9875b44 commit 120cbbb

File tree

30 files changed

+111
-27
lines changed

30 files changed

+111
-27
lines changed

packages/dd-trace/src/agent/url.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ module.exports = { getAgentUrl }
1212

1313
/**
1414
* Gets the agent URL from config, constructing it from hostname/port if needed
15-
* @param {ReturnType<import('../config')>} config - Tracer configuration object
15+
* @param {import('../config/config-base')} config - Tracer configuration object
1616
* @returns {URL} The agent URL
1717
*/
1818
function getAgentUrl (config) {

packages/dd-trace/src/aiguard/sdk.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,10 @@ class AIGuard extends NoopAIGuard {
5757
#maxContentSize
5858
#meta
5959

60+
/**
61+
* @param {import('../tracer')} tracer - Tracer instance
62+
* @param {import('../config/config-base')} config - Tracer configuration
63+
*/
6064
constructor (tracer, config) {
6165
super()
6266

packages/dd-trace/src/appsec/blocking.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,9 @@ function getBlockingAction (actions) {
164164
return actions?.redirect_request || actions?.block_request
165165
}
166166

167+
/**
168+
* @param {import('../config/config-base')} config - Tracer configuration
169+
*/
167170
function setTemplates (config) {
168171
templateHtml = config.appsec.blockedTemplateHtml || blockedTemplates.html
169172

packages/dd-trace/src/appsec/sdk/index.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@ class EventTrackingV2 {
2626
}
2727

2828
class AppsecSdk {
29+
/**
30+
* @param {import('../../tracer')} tracer - Tracer instance
31+
* @param {import('../../config/config-base')} config - Tracer configuration
32+
*/
2933
constructor (tracer, config) {
3034
this._tracer = tracer
3135
if (config) {

packages/dd-trace/src/ci-visibility/dynamic-instrumentation/index.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ const probeIdToResolveBreakpointSet = new Map()
1111
const probeIdToResolveBreakpointRemove = new Map()
1212

1313
class TestVisDynamicInstrumentation {
14+
/**
15+
* @param {import('../../config/config-base')} config - Tracer configuration
16+
*/
1417
constructor (config) {
1518
this._config = config
1619
this.worker = null
@@ -150,6 +153,9 @@ class TestVisDynamicInstrumentation {
150153

151154
let dynamicInstrumentation
152155

156+
/**
157+
* @param {import('../../config/config-base')} config - Tracer configuration
158+
*/
153159
module.exports = function createAndGetTestVisDynamicInstrumentation (config) {
154160
if (dynamicInstrumentation) {
155161
return dynamicInstrumentation

packages/dd-trace/src/ci-visibility/test-api-manual/test-api-manual-plugin.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,10 @@ class TestApiManualPlugin extends CiPlugin {
5454
})
5555
}
5656

57+
/**
58+
* @param {import('../../config/config-base')} config - Tracer configuration
59+
* @param {boolean} shouldGetEnvironmentData - Whether to get environment data
60+
*/
5761
configure (config, shouldGetEnvironmentData) {
5862
this._config = config
5963
super.configure(config, shouldGetEnvironmentData)

packages/dd-trace/src/config/config-types.d.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import type { GeneratedConfig } from './generated-config-types'
22

3-
type PayloadTaggingRules = ReturnType<typeof import('../payload-tagging/config').appendRules>
3+
type PayloadTaggingRules = ReturnType<typeof import('../payload-tagging/config').appendRules> | []
44

55
export interface ConfigProperties extends GeneratedConfig {
66
cloudPayloadTagging: GeneratedConfig['cloudPayloadTagging'] & {
@@ -77,3 +77,4 @@ type ConfigPathValueFor<T, TPath extends string> =
7777
export type ConfigKey = KnownStringKeys<ConfigProperties>
7878
export type ConfigPath = ConfigPathFor<ConfigProperties>
7979
export type ConfigPathValue<TPath extends ConfigPath> = ConfigPathValueFor<ConfigProperties, TPath>
80+
export type ConfigDefaults = Partial<{ [TPath in ConfigPath]: ConfigPathValue<TPath> }>

packages/dd-trace/src/config/defaults.js

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -466,6 +466,7 @@ for (const [fullPropertyName, alias] of fallbackConfigurations) {
466466
}
467467

468468
// Defaults required by JS config merge/applyCalculated that are not represented in supported-configurations.
469+
/** @type {import('./config-types').ConfigDefaults} */
469470
const calculatedConfigurations = {
470471
startupLogs: DD_MAJOR >= 6,
471472
'cloudPayloadTagging.rules': [],
@@ -487,20 +488,20 @@ for (const [name, value] of Object.entries(calculatedConfigurations)) {
487488
})
488489
}
489490

490-
/** @type {Record<string, unknown>} */
491+
/**
492+
* Default values indexed by flattened config path.
493+
* Only paths with explicit defaults are present.
494+
*
495+
* @type {import('./config-types').ConfigDefaults}
496+
*/
491497
const defaults = {
492-
...metadataDefaults,
498+
.../** @type {import('./config-types').ConfigDefaults} */ (metadataDefaults),
493499
...calculatedConfigurations,
494500
}
495501

496502
module.exports = {
497503
configurationsTable,
498-
/**
499-
* Returns the default values for the configuration names
500-
* (including all non-Datadog/OTEL specific configuration names).
501-
*
502-
* @returns {Record<string, unknown>} The default values
503-
*/
504+
504505
defaults,
505506

506507
// Defines one way aliases

packages/dd-trace/src/config/generated-config-types.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,6 +282,7 @@ export interface GeneratedConfig {
282282
DD_TRACE_LANGCHAIN_ENABLED: boolean;
283283
DD_TRACE_LANGCHAIN_GOOGLE_GENAI_ENABLED: boolean;
284284
DD_TRACE_LANGCHAIN_OPENAI_ENABLED: boolean;
285+
DD_TRACE_LANGGRAPH_ENABLED: boolean;
285286
DD_TRACE_LDAPJS_ENABLED: boolean;
286287
DD_TRACE_LDAPJS_PROMISE_ENABLED: boolean;
287288
DD_TRACE_LIMITD_CLIENT_ENABLED: boolean;

packages/dd-trace/src/crashtracking/crashtracker.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,9 @@ class Crashtracker {
2323
}
2424
}
2525

26+
/**
27+
* @param {import('../config/config-base')} config - Tracer configuration
28+
*/
2629
start (config) {
2730
if (this.#started) return this.configure(config)
2831

@@ -49,6 +52,9 @@ class Crashtracker {
4952
}
5053

5154
// TODO: Send only configured values when defaults are fixed.
55+
/**
56+
* @param {import('../config/config-base')} config - Tracer configuration
57+
*/
5258
#getConfig (config) {
5359
const url = getAgentUrl(config)
5460

0 commit comments

Comments
 (0)