@@ -285,8 +285,12 @@ export interface MuiRenderToStringResult {
285
285
hydrate ( ) : MuiRenderResult ;
286
286
}
287
287
288
+ interface DataAttributes {
289
+ [ key : `data-${string } `] : string ;
290
+ }
291
+
288
292
function render (
289
- element : React . ReactElement < unknown > ,
293
+ element : React . ReactElement < DataAttributes > ,
290
294
configuration : ClientRenderConfiguration ,
291
295
) : MuiRenderResult {
292
296
const { container, hydrate, wrapper } = configuration ;
@@ -306,7 +310,7 @@ function render(
306
310
traceSync ( 'forceUpdate' , ( ) =>
307
311
testingLibraryRenderResult . rerender (
308
312
React . cloneElement ( element , {
309
- [ 'data-force-update' as string ] : String ( Math . random ( ) ) ,
313
+ 'data-force-update' : String ( Math . random ( ) ) ,
310
314
} ) ,
311
315
) ,
312
316
) ;
@@ -322,7 +326,7 @@ function render(
322
326
}
323
327
324
328
function renderToString (
325
- element : React . ReactElement < unknown > ,
329
+ element : React . ReactElement < DataAttributes > ,
326
330
configuration : ServerRenderConfiguration ,
327
331
) : { container : HTMLElement ; hydrate ( ) : MuiRenderResult } {
328
332
const { container, wrapper : Wrapper } = configuration ;
@@ -444,9 +448,9 @@ function createClock(defaultMode: 'fake' | 'real', config: ClockConfig): Clock {
444
448
445
449
export interface Renderer {
446
450
clock : Clock ;
447
- render ( element : React . ReactElement < unknown > , options ?: RenderOptions ) : MuiRenderResult ;
451
+ render ( element : React . ReactElement < DataAttributes > , options ?: RenderOptions ) : MuiRenderResult ;
448
452
renderToString (
449
- element : React . ReactElement < unknown > ,
453
+ element : React . ReactElement < DataAttributes > ,
450
454
options ?: RenderOptions ,
451
455
) : MuiRenderToStringResult ;
452
456
}
@@ -586,7 +590,7 @@ export function createRenderer(globalOptions: CreateRendererOptions = {}): Rende
586
590
587
591
return {
588
592
clock,
589
- render ( element : React . ReactElement < unknown > , options : RenderOptions = { } ) {
593
+ render ( element : React . ReactElement < DataAttributes > , options : RenderOptions = { } ) {
590
594
if ( ! prepared ) {
591
595
throw new Error (
592
596
'Unable to finish setup before `render()` was called. ' +
@@ -601,7 +605,7 @@ export function createRenderer(globalOptions: CreateRendererOptions = {}): Rende
601
605
wrapper : createWrapper ( options ) ,
602
606
} ) ;
603
607
} ,
604
- renderToString ( element : React . ReactElement < unknown > , options : RenderOptions = { } ) {
608
+ renderToString ( element : React . ReactElement < DataAttributes > , options : RenderOptions = { } ) {
605
609
if ( ! prepared ) {
606
610
throw new Error (
607
611
'Unable to finish setup before `render()` was called. ' +
0 commit comments