@salesforce/b2c-tooling-sdk / config / ConfigSource
Interface: ConfigSource ​
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:251
A configuration source that can contribute config values.
Implement this interface to create custom configuration sources. Sources are called in order, and later sources can override earlier ones.
Example ​
import type { ConfigSource, ConfigLoadResult, ResolveConfigOptions } from '@salesforce/b2c-tooling-sdk/config';
class MyCustomSource implements ConfigSource {
name = 'my-custom-source';
async load(options: ResolveConfigOptions): Promise<ConfigLoadResult | undefined> {
// Load config from your custom source (sync return values also work)
return { config: { hostname: 'example.com' }, location: '/path/to/config' };
}
}Properties ​
credentialFields? ​
optionalcredentialFields: keyofNormalizedConfig[]
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:311
Fields this source can securely store (e.g., ['password', 'clientSecret']).
name ​
name:
string
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:253
Human-readable name for diagnostics
priority? ​
optionalpriority:number
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:266
Priority for source ordering. Lower numbers = higher priority.
Recommended ranges:
- < 0: Before built-in sources (override defaults)
- 0: Built-in sources (DwJsonSource, MobifySource)
- 1-999: After built-in sources (fill gaps)
- 1000: Lowest priority (PackageJsonSource)
Default ​
0Methods ​
createInstance()? ​
optionalcreateInstance(options):MaybePromise<void>
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:290
Create a new instance in this source.
Parameters ​
options ​
CreateInstanceOptions & ResolveConfigOptions
Creation options including name and config
Returns ​
MaybePromise<void>
listInstances()? ​
optionallistInstances(options?):MaybePromise<InstanceInfo[]>
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:284
List all instances from this source.
Parameters ​
options? ​
Resolution options
Returns ​
Array of instance info objects. May return synchronously or as a Promise.
load() ​
load(
options):MaybePromise<ConfigLoadResult|undefined>
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:275
Load configuration from this source.
Parameters ​
options ​
Resolution options
Returns ​
MaybePromise<ConfigLoadResult | undefined>
Config and location from this source, or undefined if source not available. May return synchronously or as a Promise.
removeCredential()? ​
optionalremoveCredential(instanceName,field,options?):MaybePromise<void>
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:333
Remove a credential for an instance.
Parameters ​
instanceName ​
string
Instance name
field ​
keyof NormalizedConfig
Config field to remove
options? ​
Resolution options
Returns ​
MaybePromise<void>
removeInstance()? ​
optionalremoveInstance(name,options?):MaybePromise<void>
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:297
Remove an instance from this source.
Parameters ​
name ​
string
Instance name to remove
options? ​
Resolution options
Returns ​
MaybePromise<void>
setActiveInstance()? ​
optionalsetActiveInstance(name,options?):MaybePromise<void>
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:304
Set an instance as active.
Parameters ​
name ​
string
Instance name to set as active
options? ​
Resolution options
Returns ​
MaybePromise<void>
storeCredential()? ​
optionalstoreCredential(instanceName,field,value,options?):MaybePromise<void>
Defined in: packages/b2c-tooling-sdk/src/config/types.ts:320
Store a credential value for an instance.
Parameters ​
instanceName ​
string
Instance name
field ​
keyof NormalizedConfig
Config field to store
value ​
string
Value to store
options? ​
Resolution options
Returns ​
MaybePromise<void>