34
}
35
36
>
function isAgentCustomizationSettingDescriptor(value: unknown): value is IAgentCustomizationSettingDescriptor {
agentCustomizationSettings.ts
37
>
if (!value || typeof value !== 'object') {
38
return false;
39
}
41
>
return typeof setting.key === 'string'
42
>
&& typeof setting.group === 'string'
43
>
&& (setting.kind === undefined || setting.kind === 'multiline')
44
>
&& (setting.saveLabel === undefined || typeof setting.saveLabel === 'string');
45
>
}
46
47
>
function isAgentCustomizationSettingsDescriptor(value: unknown): value is IAgentCustomizationSettingsDescriptor {
agentCustomizationSettings.ts
48
>
if (!value || typeof value !== 'object') {
49
return false;
50
}
52
>
if (typeof entry.provider !== 'string' || typeof entry.title !== 'string' || typeof entry.description !== 'string' || !Array.isArray(entry.settings) || !entry.settings.every(isAgentCustomizationSettingDescriptor)) {
53
return false;
54
}
56
>
return file === undefined || (!!file
57
&& typeof file.resource === 'string'
58
&& typeof file.title === 'string'