import * as plugins from './hetznercloud.plugins.js'; import * as hetznerOpenapiSpec from './openapi.spec.js'; // datacenters export type TDatacenters = hetznerOpenapiSpec.paths['/datacenters']['get']['responses']['200']['content']['application/json']; // servers export type IServer = hetznerOpenapiSpec.paths['/servers/{id}']['get']['responses']['200']['content']['application/json']['server']; export type TServersGetRequestBody = {}; export type TServersGetResponseBody = hetznerOpenapiSpec.paths['/servers']['get']['responses']['200']['content']['application/json']; export type TServerCreateRequestBody = hetznerOpenapiSpec.paths['/servers']['post']['requestBody']['content']['application/json']; export type TServerCreateResponseBody = hetznerOpenapiSpec.paths['/servers']['post']['responses']['201']['content']['application/json']; export type TServerDeleteRequestBody = hetznerOpenapiSpec.paths['/servers/{id}']['delete']; // server types export type THetznerCloudServerName = | 'cx11' | 'cx21' | 'cx31' | 'cx41' | 'cx51' | 'ccx11' | 'ccx21' | 'ccx31' | 'ccx41' | 'ccx51' | 'ccx13' | 'ccx23' | 'ccx33' | 'ccx43' | 'ccx53' | 'ccx63' | 'cpx11' | 'cpx21' | 'cpx31' | 'cpx41' | 'cpx51' | 'cpx61' | 'cpx70' | 'cpx71' | 'cpx90'; // location types export type THetznerCloudLocationName = 'fsn1' | 'nbg1' | 'hel1' | 'ash' | 'hil'; // volumes export type IVolume = hetznerOpenapiSpec.paths['/volumes/{id}']['get']['responses']['200']['content']['application/json']['volume']; export type TVolumeGetRequestBody = {}; export type TVolumeGetResponseBody = hetznerOpenapiSpec.paths['/volumes']['get']['responses']['200']['content']['application/json']; export type TVolumeCreateRequestBody = hetznerOpenapiSpec.paths['/volumes']['post']['requestBody']['content']['application/json']; export type TVolumeCreateResponseBody = hetznerOpenapiSpec.paths['/volumes']['post']['responses']['201']['content']['application/json']; export type TVolumeDeleteRequestBody = hetznerOpenapiSpec.paths['/volumes/{id}']['delete']; // firewalls export type IFirewall = hetznerOpenapiSpec.paths['/firewalls/{id}']['get']['responses']['200']['content']['application/json']['firewall']; export type TFirewallsGetRequestBody = {}; export type TFirewallsGetResponseBody = hetznerOpenapiSpec.paths['/firewalls']['get']['responses']['200']['content']['application/json']; export type TFirewallCreateRequestBody = hetznerOpenapiSpec.paths['/firewalls']['post']['requestBody']['content']['application/json']; export type TFirewallCreateResponseBody = hetznerOpenapiSpec.paths['/firewalls']['post']['responses']['201']['content']['application/json']; export type TFirewallDeleteRequestBody = hetznerOpenapiSpec.paths['/firewalls/{id}']['delete'];