/* eslint-disable import/no-unresolved,node/no-missing-import,node/no-unsupported-features/es-syntax */ import { DeviceCookie } from '../../common/drivers/DeviceCookie'; export interface DeallocOptions { shutdown?: boolean; } export interface AllocationDriverBase { init?(): Promise; allocate(deviceConfig: any): Promise; postAllocate?(deviceCookie: DeviceCookie): Promise; free(cookie: DeviceCookie, options: DeallocOptions): Promise; cleanup?(): Promise; emergencyCleanup?(): void; isRecoverableError?(error: any): boolean; }