swatts
v0.2.0-beta.2
Published
generate typescript interface and enums using swagger
Downloads
1
Readme
npm i swatts
# or
yarn add swatts
Usage
import swatts from 'swatts';
swatts({
API: 'http://YOUR-DOMAIN.wtf/swagger/v1/swagger.json',
regexpMethods: {
nameInterface?: /(Container|ExtensionTotal)\[(.*)/, // swagger v2
matchInterfaceName?: /definitions\/(\w+)/, // swagger v2
excludeDTO: /(RequestDto|ExtensionEmpty)/,
replaceSpace: /^\s*[\r\n]/gm,
},
modificators: {
interfaceReplace?: { StatedContainerDto: 'any', 'StatedContainerDto[]': 'any[]' },
typeReplace: { 'integer': 'number' }
},
filePath: __dirname + '/types.ts'
})
Example file
export enum EnumUserRole {
administrator = 'administrator', // admin
organizationOwner = 'organizationOwner', // org
}
export interface ProfileDto {
profileID: number; // ProfileID
timeZone: string; // TimeZone
firstName: string; // First name
lastName: string; // Last name
email: string; // Email
userRole: EnumUserRole;
}