/**
 * This file was created using the `create_project.py` script located in the
 * `<AndroidX root>/development/project-creator` directory.
 *
 * Please use that script when creating a new project, rather than copying an existing project and
 * modifying its settings.
 */
plugins {
id("com.android.library")
    id("AndroidXDocsPlugin")
}

android {
    namespace "androidx.docs.publicdocs"
}

dependencies {
    docs("androidx.activity:activity:1.10.0-alpha01")
    docs("androidx.activity:activity-compose:1.10.0-alpha01")
    docs("androidx.activity:activity-ktx:1.10.0-alpha01")
    // ads-identifier is deprecated
    docsWithoutApiSince("androidx.ads:ads-identifier:1.0.0-alpha05")
    docsWithoutApiSince("androidx.ads:ads-identifier-common:1.0.0-alpha05")
    docsWithoutApiSince("androidx.ads:ads-identifier-provider:1.0.0-alpha05")
    kmpDocs("androidx.annotation:annotation:1.9.0-alpha01")
    docs("androidx.annotation:annotation-experimental:1.4.1")
    docs("androidx.appcompat:appcompat:1.7.0")
    docs("androidx.appcompat:appcompat-resources:1.7.0")
    docs("androidx.appsearch:appsearch:1.1.0-alpha04")
    docs("androidx.appsearch:appsearch-builtin-types:1.1.0-alpha04")
    docs("androidx.appsearch:appsearch-ktx:1.1.0-alpha04")
    docs("androidx.appsearch:appsearch-local-storage:1.1.0-alpha04")
    docs("androidx.appsearch:appsearch-platform-storage:1.1.0-alpha04")
    docs("androidx.appsearch:appsearch-play-services-storage:1.1.0-alpha04")
    docs("androidx.arch.core:core-common:2.2.0")
    docs("androidx.arch.core:core-runtime:2.2.0")
    docs("androidx.arch.core:core-testing:2.2.0")
    docs("androidx.asynclayoutinflater:asynclayoutinflater:1.1.0-alpha01")
    docs("androidx.asynclayoutinflater:asynclayoutinflater-appcompat:1.1.0-alpha01")
    docs("androidx.autofill:autofill:1.3.0-alpha01")
    docs("androidx.benchmark:benchmark-common:1.3.0-beta01")
    docs("androidx.benchmark:benchmark-junit4:1.3.0-beta01")
    docs("androidx.benchmark:benchmark-macro:1.3.0-beta01")
    docs("androidx.benchmark:benchmark-macro-junit4:1.3.0-beta01")
    docs("androidx.biometric:biometric:1.4.0-alpha01")
    docs("androidx.biometric:biometric-ktx:1.4.0-alpha01")
    docs("androidx.bluetooth:bluetooth:1.0.0-alpha02")
    docs("androidx.bluetooth:bluetooth-testing:1.0.0-alpha02")
    docs("androidx.browser:browser:1.8.0")
    docs("androidx.camera:camera-camera2:1.4.0-beta02")
    docs("androidx.camera:camera-core:1.4.0-beta02")
    docs("androidx.camera:camera-effects:1.4.0-beta02")
    docs("androidx.camera:camera-extensions:1.4.0-beta02")
    stubs(fileTree(dir: "../camera/camera-extensions-stub", include: ["camera-extensions-stub.jar"]))
    docs("androidx.camera:camera-lifecycle:1.4.0-beta02")
    docs("androidx.camera:camera-mlkit-vision:1.4.0-beta02")
    docs("androidx.camera:camera-video:1.4.0-beta02")
    docs("androidx.camera:camera-view:1.4.0-beta02")
    docs("androidx.camera:camera-viewfinder:1.4.0-alpha07")
    docs("androidx.camera:camera-viewfinder-compose:1.4.0-alpha03")
    docs("androidx.camera:camera-viewfinder-core:1.4.0-alpha07")
    docs("androidx.car.app:app:1.7.0-beta01")
    docs("androidx.car.app:app-automotive:1.7.0-beta01")
    docs("androidx.car.app:app-projected:1.7.0-beta01")
    docs("androidx.car.app:app-testing:1.7.0-beta01")
    docs("androidx.cardview:cardview:1.0.0")
    kmpDocs("androidx.collection:collection:1.4.0")
    docs("androidx.collection:collection-ktx:1.4.0-rc01")
    kmpDocs("androidx.compose.animation:animation:1.7.0-beta04")
    kmpDocs("androidx.compose.animation:animation-core:1.7.0-beta04")
    kmpDocs("androidx.compose.animation:animation-graphics:1.7.0-beta04")
    kmpDocs("androidx.compose.foundation:foundation:1.7.0-beta04")
    kmpDocs("androidx.compose.foundation:foundation-layout:1.7.0-beta04")
    kmpDocs("androidx.compose.material3.adaptive:adaptive:1.0.0-beta04")
    kmpDocs("androidx.compose.material3.adaptive:adaptive-layout:1.0.0-beta04")
    kmpDocs("androidx.compose.material3.adaptive:adaptive-navigation:1.0.0-beta04")
    kmpDocs("androidx.compose.material3:material3:1.3.0-beta04")
    kmpDocs("androidx.compose.material3:material3-adaptive-navigation-suite:1.3.0-beta04")
    kmpDocs("androidx.compose.material3:material3-common:1.0.0-alpha01")
    kmpDocs("androidx.compose.material3:material3-window-size-class:1.3.0-beta04")
    kmpDocs("androidx.compose.material:material:1.7.0-beta04")
    kmpDocs("androidx.compose.material:material-icons-core:1.7.0-beta04")
    docs("androidx.compose.material:material-navigation:1.7.0-beta03")
    kmpDocs("androidx.compose.material:material-ripple:1.7.0-beta04")
    kmpDocs("androidx.compose.runtime:runtime:1.7.0-beta04")
    docs("androidx.compose.runtime:runtime-livedata:1.7.0-beta04")
    docs("androidx.compose.runtime:runtime-rxjava2:1.7.0-beta04")
    docs("androidx.compose.runtime:runtime-rxjava3:1.7.0-beta04")
    kmpDocs("androidx.compose.runtime:runtime-saveable:1.7.0-beta04")
    docs("androidx.compose.runtime:runtime-tracing:1.0.0-beta01")
    kmpDocs("androidx.compose.ui:ui:1.7.0-beta04")
    docs("androidx.compose.ui:ui-android-stubs:1.7.0-beta04")
    kmpDocs("androidx.compose.ui:ui-geometry:1.7.0-beta04")
    kmpDocs("androidx.compose.ui:ui-graphics:1.7.0-beta04")
    kmpDocs("androidx.compose.ui:ui-test:1.7.0-beta04")
    kmpDocs("androidx.compose.ui:ui-test-junit4:1.7.0-beta04")
    kmpDocs("androidx.compose.ui:ui-text:1.7.0-beta04")
    docs("androidx.compose.ui:ui-text-google-fonts:1.7.0-beta04")
    kmpDocs("androidx.compose.ui:ui-tooling:1.7.0-beta04")
    kmpDocs("androidx.compose.ui:ui-tooling-data:1.7.0-beta04")
    kmpDocs("androidx.compose.ui:ui-tooling-preview:1.7.0-beta04")
    kmpDocs("androidx.compose.ui:ui-unit:1.7.0-beta04")
    kmpDocs("androidx.compose.ui:ui-util:1.7.0-beta04")
    docs("androidx.compose.ui:ui-viewbinding:1.7.0-beta04")
    docs("androidx.concurrent:concurrent-futures:1.2.0")
    docs("androidx.concurrent:concurrent-futures-ktx:1.2.0")
    docs("androidx.constraintlayout:constraintlayout:2.2.0-alpha13")
    kmpDocs("androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha13")
    docs("androidx.constraintlayout:constraintlayout-core:1.1.0-alpha13")
    docs("androidx.contentpager:contentpager:1.0.0")
    docs("androidx.coordinatorlayout:coordinatorlayout:1.3.0-alpha02")
    docs("androidx.core:core:1.15.0-alpha01")
    // TODO(b/294531403): Turn on apiSince for core-animation when it releases as alpha
    docsWithoutApiSince("androidx.core:core-animation:1.0.0-rc01")
    docs("androidx.core:core-animation-testing:1.0.0")
    docs("androidx.core:core-google-shortcuts:1.2.0-alpha01")
    docs("androidx.core:core-i18n:1.0.0-alpha01")
    docs("androidx.core:core-ktx:1.15.0-alpha01")
    docs("androidx.core:core-location-altitude:1.0.0-alpha02")
    docs("androidx.core:core-performance:1.0.0")
    docs("androidx.core:core-performance-play-services:1.0.0")
    samples("androidx.core:core-performance-samples:1.0.0")
    docs("androidx.core:core-performance-testing:1.0.0")
    docs("androidx.core:core-remoteviews:1.1.0")
    docs("androidx.core:core-role:1.2.0-alpha01")
    docs("androidx.core:core-splashscreen:1.2.0-alpha01")
    docs("androidx.core:core-telecom:1.0.0-alpha03")
    docs("androidx.core:core-testing:1.15.0-alpha01")
    docs("androidx.core.uwb:uwb:1.0.0-alpha08")
    docs("androidx.core.uwb:uwb-rxjava3:1.0.0-alpha08")
    docs("androidx.credentials:credentials:1.5.0-alpha02")
    docs("androidx.credentials:credentials-e2ee:1.0.0-alpha02")
    docs("androidx.credentials:credentials-fido:1.0.0-alpha02")
    docs("androidx.credentials:credentials-play-services-auth:1.5.0-alpha02")
    docs("androidx.cursoradapter:cursoradapter:1.0.0")
    docs("androidx.customview:customview:1.2.0-alpha02")
    // TODO(b/294531403): Turn on apiSince for customview-poolingcontainer when it releases as alpha
    docsWithoutApiSince("androidx.customview:customview-poolingcontainer:1.0.0-rc01")
    kmpDocs("androidx.datastore:datastore:1.1.1")
    kmpDocs("androidx.datastore:datastore-core:1.1.1")
    kmpDocs("androidx.datastore:datastore-core-okio:1.1.1")
    kmpDocs("androidx.datastore:datastore-preferences:1.1.1")
    kmpDocs("androidx.datastore:datastore-preferences-core:1.1.1")
    docs("androidx.datastore:datastore-preferences-rxjava2:1.1.1")
    docs("androidx.datastore:datastore-preferences-rxjava3:1.1.1")
    docs("androidx.datastore:datastore-rxjava2:1.1.1")
    docs("androidx.datastore:datastore-rxjava3:1.1.1")
    docs("androidx.documentfile:documentfile:1.1.0-alpha01")
    docs("androidx.draganddrop:draganddrop:1.0.0")
    docs("androidx.drawerlayout:drawerlayout:1.2.0")
    docs("androidx.dynamicanimation:dynamicanimation:1.1.0-alpha02")
    docs("androidx.dynamicanimation:dynamicanimation-ktx:1.0.0-alpha03")
    docs("androidx.emoji2:emoji2:1.5.0-alpha01")
    docs("androidx.emoji2:emoji2-bundled:1.5.0-alpha01")
    docs("androidx.emoji2:emoji2-emojipicker:1.5.0-alpha01")
    docs("androidx.emoji2:emoji2-views:1.5.0-alpha01")
    docs("androidx.emoji2:emoji2-views-helper:1.5.0-alpha01")
    docs("androidx.emoji:emoji:1.2.0-alpha03")
    docs("androidx.emoji:emoji-appcompat:1.2.0-alpha03")
    docs("androidx.emoji:emoji-bundled:1.2.0-alpha03")
    docs("androidx.enterprise:enterprise-feedback:1.1.0")
    docs("androidx.enterprise:enterprise-feedback-testing:1.1.0")
    docs("androidx.exifinterface:exifinterface:1.3.6")
    docs("androidx.fragment:fragment:1.8.1")
    docs("androidx.fragment:fragment-compose:1.8.1")
    docs("androidx.fragment:fragment-ktx:1.8.1")
    docs("androidx.fragment:fragment-testing:1.8.1")
    docs("androidx.glance:glance:1.1.0")
    docs("androidx.glance:glance-appwidget:1.1.0")
    docs("androidx.glance:glance-appwidget-preview:1.1.0")
    docs("androidx.glance:glance-appwidget-testing:1.1.0")
    docs("androidx.glance:glance-material:1.1.0")
    docs("androidx.glance:glance-material3:1.1.0")
    docs("androidx.glance:glance-preview:1.1.0")
    docs("androidx.glance:glance-template:1.0.0-alpha06")
    docs("androidx.glance:glance-testing:1.1.0")
    docs("androidx.glance:glance-wear-tiles:1.0.0-alpha06")
    docs("androidx.graphics:graphics-core:1.0.0")
    docs("androidx.graphics:graphics-path:1.0.0")
    kmpDocs("androidx.graphics:graphics-shapes:1.0.0-beta01")
    docs("androidx.gridlayout:gridlayout:1.1.0-beta01")
    docs("androidx.health.connect:connect-client:1.1.0-alpha07")
    samples("androidx.health.connect:connect-client-samples:1.1.0-alpha07")
    docs("androidx.health:health-services-client:1.1.0-alpha03")
    docs("androidx.heifwriter:heifwriter:1.1.0-alpha02")
    docs("androidx.hilt:hilt-common:1.2.0")
    docs("androidx.hilt:hilt-navigation:1.2.0")
    docs("androidx.hilt:hilt-navigation-compose:1.2.0")
    docs("androidx.hilt:hilt-navigation-fragment:1.2.0")
    docs("androidx.hilt:hilt-work:1.2.0")
    docs("androidx.input:input-motionprediction:1.0.0-beta04")
    docs("androidx.interpolator:interpolator:1.0.0")
    docs("androidx.javascriptengine:javascriptengine:1.0.0-beta01")
    docs("androidx.leanback:leanback:1.2.0-alpha04")
    docs("androidx.leanback:leanback-grid:1.0.0-alpha03")
    docs("androidx.leanback:leanback-paging:1.1.0-alpha11")
    docs("androidx.leanback:leanback-preference:1.2.0-alpha04")
    docs("androidx.leanback:leanback-tab:1.1.0-beta01")
    kmpDocs("androidx.lifecycle:lifecycle-common:2.8.1")
    docs("androidx.lifecycle:lifecycle-common-java8:2.8.1")
    docs("androidx.lifecycle:lifecycle-extensions:2.2.0")
    docs("androidx.lifecycle:lifecycle-livedata:2.8.2")
    docs("androidx.lifecycle:lifecycle-livedata-core:2.8.2")
    docs("androidx.lifecycle:lifecycle-livedata-core-ktx:2.8.1")
    docs("androidx.lifecycle:lifecycle-livedata-ktx:2.8.1")
    docs("androidx.lifecycle:lifecycle-process:2.8.2")
    docs("androidx.lifecycle:lifecycle-reactivestreams:2.8.1")
    docs("androidx.lifecycle:lifecycle-reactivestreams-ktx:2.8.1")
    kmpDocs("androidx.lifecycle:lifecycle-runtime:2.8.1")
    kmpDocs("androidx.lifecycle:lifecycle-runtime-compose:2.8.1")
    kmpDocs("androidx.lifecycle:lifecycle-runtime-ktx:2.8.1")
    docs("androidx.lifecycle:lifecycle-runtime-testing:2.8.1")
    docs("androidx.lifecycle:lifecycle-service:2.8.1")
    kmpDocs("androidx.lifecycle:lifecycle-viewmodel:2.8.1")
    kmpDocs("androidx.lifecycle:lifecycle-viewmodel-compose:2.8.1")
    docs("androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.1")
    docs("androidx.lifecycle:lifecycle-viewmodel-savedstate:2.8.1")
    docs("androidx.loader:loader:1.1.0")
    // localbroadcastmanager is deprecated
    docsWithoutApiSince("androidx.localbroadcastmanager:localbroadcastmanager:1.1.0")
    docs("androidx.media2:media2-common:1.3.0")
    docs("androidx.media2:media2-player:1.3.0")
    docs("androidx.media2:media2-session:1.3.0")
    docs("androidx.media2:media2-widget:1.3.0")
    docs("androidx.media:media:1.7.0")
    // androidx.media3 is not hosted in androidx
    docsWithoutApiSince("androidx.media3:media3-cast:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-common:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-container:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-database:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-datasource:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-datasource-cronet:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-datasource-okhttp:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-datasource-rtmp:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-decoder:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-effect:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-exoplayer:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-dash:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-hls:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-ima:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-rtsp:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-smoothstreaming:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-workmanager:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-extractor:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-muxer:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-session:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-test-utils:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-test-utils-robolectric:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-transformer:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-ui:1.4.0-beta01")
    docsWithoutApiSince("androidx.media3:media3-ui-leanback:1.4.0-beta01")
    docs("androidx.mediarouter:mediarouter:1.7.0")
    docs("androidx.mediarouter:mediarouter-testing:1.7.0")
    docs("androidx.metrics:metrics-performance:1.0.0-beta01")
    docs("androidx.navigation:navigation-common:2.8.0-beta04")
    docs("androidx.navigation:navigation-common-ktx:2.8.0-beta04")
    docs("androidx.navigation:navigation-compose:2.8.0-beta04")
    docs("androidx.navigation:navigation-dynamic-features-fragment:2.8.0-beta04")
    docs("androidx.navigation:navigation-dynamic-features-runtime:2.8.0-beta04")
    docs("androidx.navigation:navigation-fragment:2.8.0-beta04")
    docs("androidx.navigation:navigation-fragment-compose:2.8.0-beta04")
    docs("androidx.navigation:navigation-fragment-ktx:2.8.0-beta04")
    docs("androidx.navigation:navigation-runtime:2.8.0-beta04")
    docs("androidx.navigation:navigation-runtime-ktx:2.8.0-beta04")
    docs("androidx.navigation:navigation-testing:2.8.0-beta04")
    docs("androidx.navigation:navigation-ui:2.8.0-beta04")
    docs("androidx.navigation:navigation-ui-ktx:2.8.0-beta04")
    kmpDocs("androidx.paging:paging-common:3.3.0")
    docs("androidx.paging:paging-common-ktx:3.3.0")
    kmpDocs("androidx.paging:paging-compose:3.3.0")
    docs("androidx.paging:paging-guava:3.3.0")
    docs("androidx.paging:paging-runtime:3.3.0")
    docs("androidx.paging:paging-runtime-ktx:3.3.0")
    docs("androidx.paging:paging-rxjava2:3.3.0")
    docs("androidx.paging:paging-rxjava2-ktx:3.3.0")
    docs("androidx.paging:paging-rxjava3:3.3.0")
    kmpDocs("androidx.paging:paging-testing:3.3.0")
    docs("androidx.palette:palette:1.0.0")
    docs("androidx.palette:palette-ktx:1.0.0")
    docs("androidx.percentlayout:percentlayout:1.0.1")
    docs("androidx.preference:preference:1.2.1")
    docs("androidx.preference:preference-ktx:1.2.1")
    docs("androidx.print:print:1.1.0-beta01")
    docs("androidx.privacysandbox.activity:activity-client:1.0.0-alpha01")
    docs("androidx.privacysandbox.activity:activity-core:1.0.0-alpha01")
    docs("androidx.privacysandbox.activity:activity-provider:1.0.0-alpha01")
    docs("androidx.privacysandbox.ads:ads-adservices:1.1.0-beta08")
    docs("androidx.privacysandbox.ads:ads-adservices-java:1.1.0-beta08")
    docs("androidx.privacysandbox.sdkruntime:sdkruntime-client:1.0.0-alpha13")
    docs("androidx.privacysandbox.sdkruntime:sdkruntime-core:1.0.0-alpha13")
    docs("androidx.privacysandbox.sdkruntime:sdkruntime-provider:1.0.0-alpha13")
    docs("androidx.privacysandbox.tools:tools:1.0.0-alpha09")
    docs("androidx.privacysandbox.ui:ui-client:1.0.0-alpha09")
    docs("androidx.privacysandbox.ui:ui-core:1.0.0-alpha09")
    docs("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha09")
    docs("androidx.profileinstaller:profileinstaller:1.4.0-alpha01")
    docs("androidx.recommendation:recommendation:1.0.0")
    docs("androidx.recyclerview:recyclerview:1.4.0-alpha01")
    docs("androidx.recyclerview:recyclerview-selection:2.0.0-alpha01")
    docs("androidx.remotecallback:remotecallback:1.0.0-alpha02")
    docs("androidx.resourceinspection:resourceinspection-annotation:1.0.1")
    kmpDocs("androidx.room:room-common:2.7.0-alpha04")
    docs("androidx.room:room-guava:2.7.0-alpha04")
    docs("androidx.room:room-ktx:2.7.0-alpha04")
    kmpDocs("androidx.room:room-migration:2.7.0-alpha04")
    docs("androidx.room:room-paging:2.7.0-alpha04")
    docs("androidx.room:room-paging-guava:2.7.0-alpha04")
    docs("androidx.room:room-paging-rxjava2:2.7.0-alpha04")
    docs("androidx.room:room-paging-rxjava3:2.7.0-alpha04")
    kmpDocs("androidx.room:room-runtime:2.7.0-alpha04")
    docs("androidx.room:room-rxjava2:2.7.0-alpha04")
    docs("androidx.room:room-rxjava3:2.7.0-alpha04")
    kmpDocs("androidx.room:room-testing:2.7.0-alpha04")
    docs("androidx.savedstate:savedstate:1.2.1")
    docs("androidx.savedstate:savedstate-ktx:1.2.1")
    docs("androidx.security:security-app-authenticator:1.0.0-beta01")
    docs("androidx.security:security-app-authenticator-testing:1.0.0-beta01")
    docs("androidx.security:security-crypto:1.1.0-alpha06")
    docs("androidx.security:security-crypto-ktx:1.1.0-alpha06")
    docs("androidx.security:security-identity-credential:1.0.0-alpha03")
    docs("androidx.security:security-state:1.0.0-alpha02")
    docs("androidx.sharetarget:sharetarget:1.2.0")
    docs("androidx.slice:slice-builders:1.1.0-alpha02")
    docs("androidx.slice:slice-builders-ktx:1.0.0-alpha08")
    docs("androidx.slice:slice-core:1.1.0-alpha02")
    docs("androidx.slice:slice-view:1.1.0-alpha02")
    docs("androidx.slidingpanelayout:slidingpanelayout:1.2.0")
    kmpDocs("androidx.sqlite:sqlite:2.5.0-alpha04")
    kmpDocs("androidx.sqlite:sqlite-bundled:2.5.0-alpha04")
    kmpDocs("androidx.sqlite:sqlite-framework:2.5.0-alpha04")
    docs("androidx.sqlite:sqlite-ktx:2.5.0-alpha04")
    docs("androidx.startup:startup-runtime:1.2.0-alpha02")
    docs("androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-alpha01")
    // androidx.test is not hosted in androidx
    docsWithoutApiSince("androidx.test:core:1.6.0")
    docsWithoutApiSince("androidx.test:core-ktx:1.6.0")
    docsWithoutApiSince("androidx.test:monitor:1.7.0")
    docsWithoutApiSince("androidx.test:rules:1.6.0")
    docsWithoutApiSince("androidx.test:runner:1.6.0")
    docsWithoutApiSince("androidx.test.espresso:espresso-accessibility:3.6.0")
    docsWithoutApiSince("androidx.test.espresso:espresso-contrib:3.6.0")
    docsWithoutApiSince("androidx.test.espresso:espresso-core:3.6.0")
    docsWithoutApiSince("androidx.test.espresso:espresso-device:1.0.0")
    docsWithoutApiSince("androidx.test.espresso:espresso-idling-resource:3.6.0")
    docsWithoutApiSince("androidx.test.espresso:espresso-intents:3.6.0")
    docsWithoutApiSince("androidx.test.espresso:espresso-remote:3.6.0")
    docsWithoutApiSince("androidx.test.espresso:espresso-web:3.6.0")
    docsWithoutApiSince("androidx.test.espresso.idling:idling-concurrent:3.6.0")
    docsWithoutApiSince("androidx.test.espresso.idling:idling-net:3.6.0")
    docsWithoutApiSince("androidx.test.ext:junit:1.2.0")
    docsWithoutApiSince("androidx.test.ext:junit-ktx:1.2.0")
    docsWithoutApiSince("androidx.test.ext:truth:1.6.0")
    docsWithoutApiSince("androidx.test.services:storage:1.5.0")
    docs("androidx.test.uiautomator:uiautomator:2.4.0-alpha01")
    docs("androidx.tracing:tracing:1.3.0-alpha02")
    docs("androidx.tracing:tracing-ktx:1.3.0-alpha02")
    docs("androidx.tracing:tracing-perfetto:1.0.0")
    // TODO(243405142) clean-up
    docsWithoutApiSince("androidx.tracing:tracing-perfetto-common:1.0.0-alpha16")
    docs("androidx.tracing:tracing-perfetto-handshake:1.0.0")
    docs("androidx.transition:transition:1.5.0")
    docs("androidx.transition:transition-ktx:1.5.0")
    docs("androidx.tv:tv-foundation:1.0.0-alpha10")
    docs("androidx.tv:tv-material:1.0.0-beta01")
    docs("androidx.tvprovider:tvprovider:1.1.0-alpha01")
    docs("androidx.vectordrawable:vectordrawable:1.2.0")
    docs("androidx.vectordrawable:vectordrawable-animated:1.2.0")
    docs("androidx.vectordrawable:vectordrawable-seekable:1.0.0")
    docs("androidx.versionedparcelable:versionedparcelable:1.2.0")
    docs("androidx.viewpager2:viewpager2:1.1.0")
    docs("androidx.viewpager:viewpager:1.1.0-alpha01")
    docs("androidx.wear.compose:compose-foundation:1.4.0-beta03")
    docs("androidx.wear.compose:compose-material:1.4.0-beta03")
    docs("androidx.wear.compose:compose-material-core:1.4.0-beta03")
    docs("androidx.wear.compose:compose-material3:1.0.0-alpha23")
    docs("androidx.wear.compose:compose-navigation:1.4.0-beta03")
    docs("androidx.wear.compose:compose-ui-tooling:1.4.0-beta03")
    docs("androidx.wear.protolayout:protolayout:1.2.0-alpha05")
    docs("androidx.wear.protolayout:protolayout-expression:1.2.0-alpha05")
    docs("androidx.wear.protolayout:protolayout-expression-pipeline:1.2.0-alpha05")
    docs("androidx.wear.protolayout:protolayout-material:1.2.0-alpha05")
    docs("androidx.wear.protolayout:protolayout-material-core:1.2.0-alpha05")
    docs("androidx.wear.protolayout:protolayout-renderer:1.2.0-alpha05")
    docs("androidx.wear.tiles:tiles:1.4.0-alpha05")
    docs("androidx.wear.tiles:tiles-material:1.4.0-alpha05")
    docs("androidx.wear.tiles:tiles-renderer:1.4.0-alpha05")
    docs("androidx.wear.tiles:tiles-testing:1.4.0-alpha05")
    docs("androidx.wear.tiles:tiles-tooling:1.4.0-alpha05")
    docs("androidx.wear.tiles:tiles-tooling-preview:1.4.0-alpha05")
    docs("androidx.wear.watchface:watchface:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-client:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-client-guava:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-complications:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-complications-data:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-complications-data-source:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-complications-data-source-ktx:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-complications-rendering:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-data:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-editor:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-editor-guava:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-guava:1.3.0-alpha03")
    docs("androidx.wear.watchface:watchface-style:1.3.0-alpha03")
    docs("androidx.wear:wear:1.4.0-alpha01")
    stubs(fileTree(dir: "../wear/wear_stubs/", include: ["com.google.android.wearable-stubs.jar"]))
    docs("androidx.wear:wear-core:1.0.0-alpha01")
    docs("androidx.wear:wear-input:1.2.0-alpha02")
    samples("androidx.wear:wear-input-samples:1.2.0-alpha01")
    docs("androidx.wear:wear-input-testing:1.2.0-alpha02")
    docs("androidx.wear:wear-ongoing:1.1.0-alpha01")
    docs("androidx.wear:wear-phone-interactions:1.1.0-alpha04")
    samples("androidx.wear:wear-phone-interactions-samples:1.1.0-alpha04")
    docs("androidx.wear:wear-remote-interactions:1.1.0-alpha02")
    samples("androidx.wear:wear-remote-interactions-samples:1.1.0-alpha02")
    docs("androidx.wear:wear-tooling-preview:1.0.0")
    docs("androidx.webkit:webkit:1.12.0-alpha02")
    docs("androidx.window.extensions.core:core:1.0.0")
    docs("androidx.window:window:1.3.0")
    stubs(fileTree(dir: "../window/stubs/", include: ["window-sidecar-release-0.1.0-alpha01.aar"]))
    kmpDocs("androidx.window:window-core:1.3.0")
    stubs("androidx.window:window-extensions:1.0.0-alpha01")
    docs("androidx.window:window-java:1.3.0")
    docs("androidx.window:window-rxjava2:1.3.0")
    docs("androidx.window:window-rxjava3:1.3.0")
    docs("androidx.window:window-testing:1.3.0")
    docs("androidx.work:work-gcm:2.10.0-alpha02")
    docs("androidx.work:work-multiprocess:2.10.0-alpha02")
    docs("androidx.work:work-runtime:2.10.0-alpha02")
    docs("androidx.work:work-runtime-ktx:2.10.0-alpha02")
    docs("androidx.work:work-rxjava2:2.10.0-alpha02")
    docs("androidx.work:work-rxjava3:2.10.0-alpha02")
    docs("androidx.work:work-testing:2.10.0-alpha02")
}

afterEvaluate {
  tasks["docs"].doFirst {
    println("docs-public:docs starting")
  }
  tasks["docs"].doLast {
    println("docs-public:docs completing")
  }
}
