export interface Headers { location ? : string ; [ key ] : any ; } export interface Options { headers ? : Headers ; body ? : { [ key ] : any ; } ; query ? : { [ key ] : any ; } ; [ key ] : any ; } export interface ResponseInterface { status : number ; headers : { [ key ] : any ; } ; body : { [ key ] : any ; } ; get ( field ) : string ; set ( field , value ) : void ; } export class OAuthResponse implements ResponseInterface { status = 200 ; body : Record < string , unknown > = { } ; headers : Headers = { } ; constructor ( responseOptions = { headers : { } } ) { this . headers = { ... responseOptions . headers , } ; } get ( field ) { console . log ( { headers : this . headers , field } ) ; return "" ; } set ( fieldOrHeaders , value ) { this . headers [ fieldOrHeaders . toLowerCase ( ) ] = value ; } }