/* tslint:disable */
/* eslint-disable */

/* auto-generated by NAPI-RS */

export interface Config {
  data: LoaderEnrichments
  bundlerBuildId?: string
  prefix: string
  functionWrapper: string
  awaitWrapper: string
  yieldWrapper: string
  yieldStarWrapper: string
  initialStatements: Array<string>
  bodyPlaceholder: string
  functionIdPlaceholder: string
  awaitablePlaceholder: string
  fixStackFunction: string
  asyncIteratorWrapper: string
  uuidNamespace: string
  fileHash: string
  useInputSourcemap: boolean
}
export interface LoaderEnrichments {
  filename: string
  format: string
}
export interface EsbuildConfig {
  data: LoaderEnrichments
  initialStatements: Array<string>
  suffixStatements: Array<string>
}
export interface TransformFullOutput {
  code: string
  map: string
  functionsIds: Array<string>
  isInputSourcemap: boolean
  moduleBase: number
}
export interface MarkFileOutput {
  code: string
  map: string
}
export declare function transform(moduleCode: string, config: Config): TransformFullOutput
export declare function markFile(moduleCode: string, config: EsbuildConfig): MarkFileOutput
export declare function getSourceMap(sourcePath: string, sourceCode: string): string | null
