@@ -57,45 +57,39 @@ export interface StallDetectionOptions {
5757 checkInterval : number // How often to check for stalls
5858}
5959
60- export type Part = { start : number ; end : number }
61-
6260export interface UploadOptions {
63- endpoint ?: string | null
64- uploadUrl ?: string | null
65- metadata : Record < string , string >
66- metadataForPartialUploads ?: Record < string , string >
67- uploadSize ?: number | null
68- onProgress : ( ( bytesSent : number , bytesTotal : number | null ) => void ) | null
69- onChunkComplete :
70- | ( ( chunkSize : number , bytesAccepted : number , bytesTotal : number | null ) => void )
71- | null
72- onSuccess : ( ( payload : OnSuccessPayload ) => void ) | null
73- onError : ( ( error : Error | DetailedError ) => void ) | null
74- onUploadUrlAvailable : ( ( ) => void ) | null
75- onShouldRetry :
76- | ( ( err : Error | DetailedError , retryAttempt : number , options : UploadOptions ) => boolean )
77- | null
61+ endpoint ?: string
62+
63+ uploadUrl ?: string
64+ metadata : { [ key : string ] : string }
65+ metadataForPartialUploads : UploadOptions [ 'metadata' ]
66+ fingerprint : ( file : UploadInput , options : UploadOptions ) => Promise < string | null >
67+ uploadSize ?: number
68+
69+ onProgress ?: ( bytesSent : number , bytesTotal : number | null ) => void
70+ onChunkComplete ?: ( chunkSize : number , bytesAccepted : number , bytesTotal : number | null ) => void
71+ onSuccess ?: ( payload : OnSuccessPayload ) => void
72+ onError ?: ( error : Error | DetailedError ) => void
73+ onShouldRetry ?: ( error : DetailedError , retryAttempt : number , options : UploadOptions ) => boolean
74+ onUploadUrlAvailable ?: ( ) => void | Promise < void >
7875
7976 overridePatchMethod : boolean
80- headers : Record < string , string >
77+ headers : { [ key : string ] : string }
8178 addRequestId : boolean
82-
83- onBeforeRequest : ( ( req : HttpRequest ) => void | Promise < void > ) | null
84- onAfterResponse : ( ( req : HttpRequest , res : HttpResponse ) => void | Promise < void > ) | null
79+ onBeforeRequest ?: ( req : HttpRequest ) => void | Promise < void >
80+ onAfterResponse ?: ( req : HttpRequest , res : HttpResponse ) => void | Promise < void >
8581
8682 chunkSize : number
87- retryDelays : number [ ] | null
83+ retryDelays : number [ ]
8884 parallelUploads : number
89- parallelUploadBoundaries ?: Part [ ] | null
85+ parallelUploadBoundaries ?: { start : number ; end : number } [ ]
9086 storeFingerprintForResuming : boolean
9187 removeFingerprintOnSuccess : boolean
9288 uploadLengthDeferred : boolean
9389 uploadDataDuringCreation : boolean
9490
9591 urlStorage : UrlStorage
9692 fileReader : FileReader
97- fingerprint : ( file : UploadInput , options : UploadOptions ) => Promise < string | null >
98- // TODO: Types need to be double-checked
9993 httpStack : HttpStack
10094
10195 protocol : typeof PROTOCOL_TUS_V1 | typeof PROTOCOL_IETF_DRAFT_03 | typeof PROTOCOL_IETF_DRAFT_05
@@ -158,9 +152,6 @@ export type SliceResult =
158152export interface HttpStack {
159153 createRequest ( method : string , url : string ) : HttpRequest
160154 getName ( ) : string
161- // Indicates whether this HTTP stack implementation supports progress events
162- // during upload. If false, stall detection will use overall transfer rate instead.
163- supportsProgressEvents : ( ) => boolean
164155}
165156
166157export type HttpProgressHandler = ( bytesSent : number ) => void
@@ -179,6 +170,10 @@ export interface HttpRequest {
179170
180171 // Return an environment specific object, e.g. the XMLHttpRequest object in browsers.
181172 getUnderlyingObject ( ) : unknown
173+
174+ // Indicates whether this HTTP stack implementation supports progress events
175+ // during upload. If false, stall detection will use overall transfer rate instead.
176+ supportsProgressEvents : ( ) => boolean
182177}
183178
184179export interface HttpResponse {
0 commit comments