"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
value: true
|
});
|
exports.default = createTypeAnnotationBasedOnTypeof;
|
|
var _generated = require("../generated");
|
|
function createTypeAnnotationBasedOnTypeof(type) {
|
if (type === "string") {
|
return (0, _generated.stringTypeAnnotation)();
|
} else if (type === "number") {
|
return (0, _generated.numberTypeAnnotation)();
|
} else if (type === "undefined") {
|
return (0, _generated.voidTypeAnnotation)();
|
} else if (type === "boolean") {
|
return (0, _generated.booleanTypeAnnotation)();
|
} else if (type === "function") {
|
return (0, _generated.genericTypeAnnotation)((0, _generated.identifier)("Function"));
|
} else if (type === "object") {
|
return (0, _generated.genericTypeAnnotation)((0, _generated.identifier)("Object"));
|
} else if (type === "symbol") {
|
return (0, _generated.genericTypeAnnotation)((0, _generated.identifier)("Symbol"));
|
} else if (type === "bigint") {
|
return (0, _generated.anyTypeAnnotation)();
|
} else {
|
throw new Error("Invalid typeof value: " + type);
|
}
|
}
|