function getArgsFromMetadata()

in telemetry/vscode/src/generate.ts [81:111]


function getArgsFromMetadata(m: MetadataType): string {
    if (m.allowedValues) {
        const name = toTitleCase(m.name)
        const mm = exportedTypes.find(tt => tt.name === name)

        if (!mm) {
            exportedTypes.push({
                name,
                kind: StructureKind.TypeAlias,
                isExported: true,
                type: m.allowedValues.map(v => `'${v}'`).join(' | '),
            })
        }

        return name
    }

    switch (m.type) {
        case undefined:
        case 'string':
            return 'string'
        case 'double':
        case 'int':
            return 'number'
        case 'boolean':
            return 'boolean'
        default: {
            throw new TypeError(`unknown type ${m?.type} in metadata ${m.name}`)
        }
    }
}