/**
 * 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.9.0-rc01")
    docs("androidx.activity:activity-compose:1.9.0-rc01")
    samples("androidx.activity:activity-compose-samples:1.9.0-rc01")
    docs("androidx.activity:activity-ktx:1.9.0-rc01")
    // 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.8.0-beta01")
    docs("androidx.annotation:annotation-experimental:1.4.1")
    docs("androidx.appcompat:appcompat:1.7.0-alpha03")
    docs("androidx.appcompat:appcompat-resources:1.7.0-alpha03")
    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-alpha02")
    docs("androidx.benchmark:benchmark-junit4:1.3.0-alpha02")
    docs("androidx.benchmark:benchmark-macro:1.3.0-alpha02")
    docs("androidx.benchmark:benchmark-macro-junit4:1.3.0-alpha02")
    docs("androidx.biometric:biometric:1.2.0-alpha05")
    docs("androidx.biometric:biometric-ktx:1.2.0-alpha05")
    samples("androidx.biometric:biometric-ktx-samples:1.2.0-alpha05")
    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-alpha04")
    docs("androidx.camera:camera-core:1.4.0-alpha04")
    docs("androidx.camera:camera-effects:1.4.0-alpha04")
    docs("androidx.camera:camera-extensions:1.4.0-alpha04")
    stubs(fileTree(dir: "../camera/camera-extensions-stub", include: ["camera-extensions-stub.jar"]))
    docs("androidx.camera:camera-lifecycle:1.4.0-alpha04")
    docs("androidx.camera:camera-mlkit-vision:1.4.0-alpha04")
    docs("androidx.camera:camera-video:1.4.0-alpha04")
    docs("androidx.camera:camera-view:1.4.0-alpha04")
    docs("androidx.camera:camera-viewfinder:1.4.0-alpha04")
    docs("androidx.camera:camera-viewfinder-compose:1.4.0-alpha03")
    docs("androidx.camera:camera-viewfinder-core:1.4.0-alpha04")
    samples("androidx.camera:camera-viewfinder-core-samples:1.4.0-alpha04")
    docs("androidx.car.app:app:1.7.0-alpha01")
    docs("androidx.car.app:app-automotive:1.7.0-alpha01")
    docs("androidx.car.app:app-projected:1.7.0-alpha01")
    docs("androidx.car.app:app-testing:1.7.0-alpha01")
    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-alpha06")
    kmpDocs("androidx.compose.animation:animation-core:1.7.0-alpha06")
    kmpDocs("androidx.compose.animation:animation-graphics:1.7.0-alpha06")
    samples("androidx.compose.animation:animation-samples:1.7.0-alpha06")
    samples("androidx.compose.animation:animation-core-samples:1.7.0-alpha06")
    samples("androidx.compose.animation:animation-graphics-samples:1.7.0-alpha06")
    kmpDocs("androidx.compose.foundation:foundation:1.7.0-alpha06")
    kmpDocs("androidx.compose.foundation:foundation-layout:1.7.0-alpha06")
    samples("androidx.compose.foundation:foundation-layout-samples:1.7.0-alpha06")
    samples("androidx.compose.foundation:foundation-samples:1.7.0-alpha06")
    kmpDocs("androidx.compose.material3.adaptive:adaptive:1.0.0-alpha10")
    kmpDocs("androidx.compose.material3.adaptive:adaptive-layout:1.0.0-alpha10")
    docs("androidx.compose.material3.adaptive:adaptive-navigation:1.0.0-alpha10")
    samples("androidx.compose.material3.adaptive:adaptive-samples:1.0.0-alpha10")
    kmpDocs("androidx.compose.material3:material3:1.3.0-alpha04")
    kmpDocs("androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05")
    samples("androidx.compose.material3:material3-adaptive-navigation-suite-samples:1.3.0-alpha04")
    docs("androidx.compose.material3:material3-common:1.0.0-alpha01")
    samples("androidx.compose.material3:material3-samples:1.3.0-alpha04")
    kmpDocs("androidx.compose.material3:material3-window-size-class:1.3.0-alpha04")
    samples("androidx.compose.material3:material3-window-size-class-samples:1.3.0-alpha04")
    kmpDocs("androidx.compose.material:material:1.7.0-alpha06")
    kmpDocs("androidx.compose.material:material-icons-core:1.7.0-alpha06")
    samples("androidx.compose.material:material-icons-core-samples:1.7.0-alpha06")
    docs("androidx.compose.material:material-navigation:1.7.0-alpha06")
    samples("androidx.compose.material:material-navigation-samples:1.7.0-alpha06")
    kmpDocs("androidx.compose.material:material-ripple:1.7.0-alpha06")
    samples("androidx.compose.material:material-samples:1.7.0-alpha06")
    kmpDocs("androidx.compose.runtime:runtime:1.7.0-alpha06")
    docs("androidx.compose.runtime:runtime-livedata:1.7.0-alpha06")
    samples("androidx.compose.runtime:runtime-livedata-samples:1.7.0-alpha06")
    docs("androidx.compose.runtime:runtime-rxjava2:1.7.0-alpha06")
    samples("androidx.compose.runtime:runtime-rxjava2-samples:1.7.0-alpha06")
    docs("androidx.compose.runtime:runtime-rxjava3:1.7.0-alpha06")
    samples("androidx.compose.runtime:runtime-rxjava3-samples:1.7.0-alpha06")
    kmpDocs("androidx.compose.runtime:runtime-saveable:1.7.0-alpha06")
    samples("androidx.compose.runtime:runtime-saveable-samples:1.7.0-alpha06")
    samples("androidx.compose.runtime:runtime-samples:1.7.0-alpha06")
    docs("androidx.compose.runtime:runtime-tracing:1.0.0-beta01")
    kmpDocs("androidx.compose.ui:ui:1.7.0-alpha06")
    kmpDocs("androidx.compose.ui:ui-geometry:1.7.0-alpha06")
    kmpDocs("androidx.compose.ui:ui-graphics:1.7.0-alpha06")
    samples("androidx.compose.ui:ui-graphics-samples:1.7.0-alpha06")
    kmpDocs("androidx.compose.ui:ui-test:1.7.0-alpha06")
    kmpDocs("androidx.compose.ui:ui-test-junit4:1.7.0-alpha06")
    samples("androidx.compose.ui:ui-test-samples:1.7.0-alpha06")
    kmpDocs("androidx.compose.ui:ui-text:1.7.0-alpha06")
    docs("androidx.compose.ui:ui-text-google-fonts:1.7.0-alpha06")
    samples("androidx.compose.ui:ui-text-samples:1.7.0-alpha06")
    kmpDocs("androidx.compose.ui:ui-tooling:1.7.0-alpha06")
    kmpDocs("androidx.compose.ui:ui-tooling-data:1.7.0-alpha06")
    kmpDocs("androidx.compose.ui:ui-tooling-preview:1.7.0-alpha06")
    kmpDocs("androidx.compose.ui:ui-unit:1.7.0-alpha06")
    samples("androidx.compose.ui:ui-unit-samples:1.7.0-alpha06")
    kmpDocs("androidx.compose.ui:ui-util:1.7.0-alpha06")
    docs("androidx.compose.ui:ui-viewbinding:1.7.0-alpha06")
    samples("androidx.compose.ui:ui-viewbinding-samples:1.7.0-alpha06")
    samples("androidx.compose.ui:ui-samples:1.7.0-alpha06")
    docs("androidx.concurrent:concurrent-futures:1.2.0-alpha03")
    docs("androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha03")
    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.13.0")
    // TODO(b/294531403): Turn on apiSince for core-animation when it releases as alpha
    docsWithoutApiSince("androidx.core:core-animation:1.0.0-rc01")
    docsWithoutApiSince("androidx.core:core-animation-testing:1.0.0-rc01")
    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.13.0")
    docs("androidx.core:core-location-altitude:1.0.0-alpha01")
    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-beta01")
    docs("androidx.core:core-role:1.2.0-alpha01")
    docs("androidx.core:core-splashscreen:1.1.0-alpha02")
    docs("androidx.core:core-telecom:1.0.0-alpha02")
    docs("androidx.core:core-testing:1.13.0")
    docs("androidx.core.uwb:uwb:1.0.0-alpha08")
    docs("androidx.core.uwb:uwb-rxjava3:1.0.0-alpha08")
    docs("androidx.credentials:credentials:1.3.0-alpha02")
    docs("androidx.credentials:credentials-e2ee:1.0.0-alpha01")
    docs("androidx.credentials:credentials-fido:1.0.0-alpha02")
    docs("androidx.credentials:credentials-play-services-auth:1.3.0-alpha02")
    samples("androidx.credentials:credentials-samples:1.3.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.0-rc01")
    kmpDocs("androidx.datastore:datastore-core:1.1.0-rc01")
    kmpDocs("androidx.datastore:datastore-core-okio:1.1.0-rc01")
    kmpDocs("androidx.datastore:datastore-preferences:1.1.0-rc01")
    kmpDocs("androidx.datastore:datastore-preferences-core:1.1.0-rc01")
    docs("androidx.datastore:datastore-preferences-rxjava2:1.1.0-rc01")
    docs("androidx.datastore:datastore-preferences-rxjava3:1.1.0-rc01")
    docs("androidx.datastore:datastore-rxjava2:1.1.0-rc01")
    docs("androidx.datastore:datastore-rxjava3:1.1.0-rc01")
    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.0-alpha01")
    docs("androidx.fragment:fragment-compose:1.8.0-alpha01")
    samples("androidx.fragment:fragment-compose-samples:1.8.0-alpha01")
    docs("androidx.fragment:fragment-ktx:1.8.0-alpha01")
    docs("androidx.fragment:fragment-testing:1.8.0-alpha01")
    docs("androidx.glance:glance:1.1.0-beta01")
    docs("androidx.glance:glance-appwidget:1.1.0-beta01")
    samples("androidx.glance:glance-appwidget-samples:1.1.0-beta01")
    docs("androidx.glance:glance-appwidget-preview:1.0.0-alpha06")
    docs("androidx.glance:glance-appwidget-testing:1.1.0-beta01")
    samples("androidx.glance:glance-appwidget-testing-samples:1.1.0-beta01")
    docs("androidx.glance:glance-material:1.1.0-beta01")
    docs("androidx.glance:glance-material3:1.1.0-beta01")
    docs("androidx.glance:glance-preview:1.0.0-alpha06")
    docs("androidx.glance:glance-template:1.0.0-alpha06")
    docs("androidx.glance:glance-testing:1.1.0-beta01")
    docs("androidx.glance:glance-wear-tiles:1.0.0-alpha06")
    docs("androidx.graphics:graphics-core:1.0.0-beta01")
    samples("androidx.graphics:graphics-core-samples:1.0.0-beta01")
    docs("androidx.graphics:graphics-path:1.0.0")
    kmpDocs("androidx.graphics:graphics-shapes:1.0.0-alpha05")
    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-alpha02")
    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")
    samples("androidx.hilt:hilt-navigation-compose-samples: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-beta03")
    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.0-alpha04")
    docs("androidx.lifecycle:lifecycle-common-java8:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-extensions:2.2.0")
    docs("androidx.lifecycle:lifecycle-livedata:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-livedata-core:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-livedata-core-ktx:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-livedata-ktx:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-process:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-reactivestreams:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-reactivestreams-ktx:2.8.0-alpha04")
    kmpDocs("androidx.lifecycle:lifecycle-runtime:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-runtime-compose:2.8.0-alpha04")
    samples("androidx.lifecycle:lifecycle-runtime-compose-samples:2.8.0-alpha04")
    kmpDocs("androidx.lifecycle:lifecycle-runtime-ktx:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-runtime-testing:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-service:2.8.0-alpha04")
    kmpDocs("androidx.lifecycle:lifecycle-viewmodel:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-viewmodel-compose:2.8.0-alpha04")
    samples("androidx.lifecycle:lifecycle-viewmodel-compose-samples:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.0-alpha04")
    docs("androidx.lifecycle:lifecycle-viewmodel-savedstate:2.8.0-alpha04")
    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.3.1")
    docsWithoutApiSince("androidx.media3:media3-common:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-container:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-database:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-datasource:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-datasource-cronet:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-datasource-okhttp:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-datasource-rtmp:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-decoder:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-effect:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-exoplayer:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-dash:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-hls:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-ima:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-rtsp:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-smoothstreaming:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-exoplayer-workmanager:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-extractor:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-muxer:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-session:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-test-utils:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-test-utils-robolectric:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-transformer:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-ui:1.3.1")
    docsWithoutApiSince("androidx.media3:media3-ui-leanback:1.3.1")
    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-alpha06")
    docs("androidx.navigation:navigation-common-ktx:2.8.0-alpha06")
    docs("androidx.navigation:navigation-compose:2.8.0-alpha06")
    samples("androidx.navigation:navigation-compose-samples:2.8.0-alpha06")
    docs("androidx.navigation:navigation-dynamic-features-fragment:2.8.0-alpha06")
    docs("androidx.navigation:navigation-dynamic-features-runtime:2.8.0-alpha06")
    docs("androidx.navigation:navigation-fragment:2.8.0-alpha06")
    docs("androidx.navigation:navigation-fragment-ktx:2.8.0-alpha06")
    docs("androidx.navigation:navigation-runtime:2.8.0-alpha06")
    docs("androidx.navigation:navigation-runtime-ktx:2.8.0-alpha06")
    docs("androidx.navigation:navigation-testing:2.8.0-alpha06")
    docs("androidx.navigation:navigation-ui:2.8.0-alpha06")
    docs("androidx.navigation:navigation-ui-ktx:2.8.0-alpha06")
    kmpDocs("androidx.paging:paging-common:3.3.0-beta01")
    docs("androidx.paging:paging-common-ktx:3.3.0-beta01")
    kmpDocs("androidx.paging:paging-compose:3.3.0-beta01")
    samples("androidx.paging:paging-compose-samples:3.3.0-beta01")
    docs("androidx.paging:paging-guava:3.3.0-beta01")
    docs("androidx.paging:paging-runtime:3.3.0-beta01")
    docs("androidx.paging:paging-runtime-ktx:3.3.0-beta01")
    docs("androidx.paging:paging-rxjava2:3.3.0-beta01")
    docs("androidx.paging:paging-rxjava2-ktx:3.3.0-beta01")
    docs("androidx.paging:paging-rxjava3:3.3.0-beta01")
    samples("androidx.paging:paging-samples:3.3.0-beta01")
    kmpDocs("androidx.paging:paging-testing:3.3.0-beta01")
    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-beta05")
    docs("androidx.privacysandbox.ads:ads-adservices-java:1.1.0-beta05")
    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-alpha08")
    docs("androidx.privacysandbox.ui:ui-client:1.0.0-alpha07")
    docs("androidx.privacysandbox.ui:ui-core:1.0.0-alpha07")
    docs("androidx.privacysandbox.ui:ui-provider:1.0.0-alpha07")
    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")
    docs("androidx.room:room-common:2.6.1")
    docs("androidx.room:room-guava:2.6.1")
    docs("androidx.room:room-ktx:2.6.1")
    docs("androidx.room:room-migration:2.6.1")
    docs("androidx.room:room-paging:2.6.1")
    docs("androidx.room:room-paging-guava:2.6.1")
    docs("androidx.room:room-paging-rxjava2:2.6.1")
    docs("androidx.room:room-paging-rxjava3:2.6.1")
    docs("androidx.room:room-runtime:2.6.1")
    docs("androidx.room:room-rxjava2:2.6.1")
    docs("androidx.room:room-rxjava3:2.6.1")
    docs("androidx.room:room-testing:2.6.1")
    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.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")
    docs("androidx.sqlite:sqlite:2.4.0")
    docs("androidx.sqlite:sqlite-framework:2.4.0")
    docs("androidx.sqlite:sqlite-ktx:2.4.0")
    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-alpha05")
    docsWithoutApiSince("androidx.test:core-ktx:1.6.0-alpha05")
    docsWithoutApiSince("androidx.test:monitor:1.7.0-alpha04")
    docsWithoutApiSince("androidx.test:rules:1.6.0-alpha03")
    docsWithoutApiSince("androidx.test:runner:1.6.0-alpha06")
    docsWithoutApiSince("androidx.test.espresso:espresso-accessibility:3.6.0-alpha03")
    docsWithoutApiSince("androidx.test.espresso:espresso-contrib:3.6.0-alpha03")
    docsWithoutApiSince("androidx.test.espresso:espresso-core:3.6.0-alpha03")
    docsWithoutApiSince("androidx.test.espresso:espresso-device:1.0.0-alpha08")
    docsWithoutApiSince("androidx.test.espresso:espresso-idling-resource:3.6.0-alpha03")
    docsWithoutApiSince("androidx.test.espresso:espresso-intents:3.6.0-alpha03")
    docsWithoutApiSince("androidx.test.espresso:espresso-remote:3.6.0-alpha03")
    docsWithoutApiSince("androidx.test.espresso:espresso-web:3.6.0-alpha03")
    docsWithoutApiSince("androidx.test.espresso.idling:idling-concurrent:3.6.0-alpha03")
    docsWithoutApiSince("androidx.test.espresso.idling:idling-net:3.6.0-alpha03")
    docsWithoutApiSince("androidx.test.ext:junit:1.2.0-alpha03")
    docsWithoutApiSince("androidx.test.ext:junit-ktx:1.2.0-alpha03")
    docsWithoutApiSince("androidx.test.ext:truth:1.6.0-alpha03")
    docsWithoutApiSince("androidx.test.services:storage:1.5.0-alpha03")
    docsWithoutApiSince("androidx.test.uiautomator:uiautomator:2.3.0")
    // androidx.textclassifier is not hosted in androidx
    docsWithoutApiSince("androidx.textclassifier:textclassifier:1.0.0-alpha04")
    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-rc01")
    docs("androidx.transition:transition-ktx:1.5.0-rc01")
    docs("androidx.tv:tv-foundation:1.0.0-alpha10")
    docs("androidx.tv:tv-material:1.0.0-alpha10")
    samples("androidx.tv:tv-samples:1.0.0-alpha10")
    docs("androidx.tvprovider:tvprovider:1.1.0-alpha01")
    docs("androidx.vectordrawable:vectordrawable:1.2.0-beta01")
    docs("androidx.vectordrawable:vectordrawable-animated:1.2.0-alpha01")
    docs("androidx.vectordrawable:vectordrawable-seekable:1.0.0-beta01")
    docs("androidx.versionedparcelable:versionedparcelable:1.2.0")
    docs("androidx.viewpager2:viewpager2:1.1.0-beta02")
    docs("androidx.viewpager:viewpager:1.1.0-alpha01")
    docs("androidx.wear.compose:compose-foundation:1.4.0-alpha06")
    samples("androidx.wear.compose:compose-foundation-samples:1.4.0-alpha06")
    docs("androidx.wear.compose:compose-material:1.4.0-alpha06")
    docs("androidx.wear.compose:compose-material-core:1.4.0-alpha06")
    samples("androidx.wear.compose:compose-material-samples:1.4.0-alpha06")
    docs("androidx.wear.compose:compose-material3:1.0.0-alpha20")
    samples("androidx.wear.compose:compose-material3-samples:1.4.0-alpha06")
    docs("androidx.wear.compose:compose-navigation:1.4.0-alpha06")
    samples("androidx.wear.compose:compose-navigation-samples:1.4.0-alpha06")
    docs("androidx.wear.compose:compose-ui-tooling:1.4.0-alpha06")
    docs("androidx.wear.protolayout:protolayout:1.2.0-alpha01")
    docs("androidx.wear.protolayout:protolayout-expression:1.2.0-alpha01")
    docs("androidx.wear.protolayout:protolayout-expression-pipeline:1.2.0-alpha01")
    docs("androidx.wear.protolayout:protolayout-material:1.2.0-alpha01")
    docs("androidx.wear.protolayout:protolayout-material-core:1.2.0-alpha01")
    docs("androidx.wear.protolayout:protolayout-renderer:1.2.0-alpha01")
    docs("androidx.wear.tiles:tiles:1.4.0-alpha01")
    docs("androidx.wear.tiles:tiles-material:1.4.0-alpha01")
    docs("androidx.wear.tiles:tiles-renderer:1.4.0-alpha01")
    docs("androidx.wear.tiles:tiles-testing:1.4.0-alpha01")
    docs("androidx.wear.tiles:tiles-tooling:1.4.0-alpha01")
    docs("androidx.wear.tiles:tiles-tooling-preview:1.4.0-alpha01")
    docs("androidx.wear.watchface:watchface:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-client:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-client-guava:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-complications:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-complications-data:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-complications-data-source:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-complications-data-source-ktx:1.3.0-alpha02")
    samples("androidx.wear.watchface:watchface-complications-permission-dialogs-sample:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-complications-rendering:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-data:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-editor:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-editor-guava:1.3.0-alpha02")
    samples("androidx.wear.watchface:watchface-editor-samples:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-guava:1.3.0-alpha02")
    samples("androidx.wear.watchface:watchface-samples:1.3.0-alpha02")
    docs("androidx.wear.watchface:watchface-style:1.3.0-alpha02")
    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-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.11.0-rc01")
    docs("androidx.window.extensions.core:core:1.0.0")
    docs("androidx.window:window:1.3.0-beta01")
    stubs(fileTree(dir: "../window/stubs/", include: ["window-sidecar-release-0.1.0-alpha01.aar"]))
    kmpDocs("androidx.window:window-core:1.3.0-beta01")
    stubs("androidx.window:window-extensions:1.0.0-alpha01")
    docs("androidx.window:window-java:1.3.0-beta01")
    docs("androidx.window:window-rxjava2:1.3.0-beta01")
    docs("androidx.window:window-rxjava3:1.3.0-beta01")
    samples("androidx.window:window-samples:1.3.0-beta01")
    docs("androidx.window:window-testing:1.3.0-beta01")
    docs("androidx.work:work-gcm:2.10.0-alpha01")
    docs("androidx.work:work-multiprocess:2.10.0-alpha01")
    docs("androidx.work:work-runtime:2.10.0-alpha01")
    docs("androidx.work:work-runtime-ktx:2.10.0-alpha01")
    docs("androidx.work:work-rxjava2:2.10.0-alpha01")
    docs("androidx.work:work-rxjava3:2.10.0-alpha01")
    docs("androidx.work:work-testing:2.10.0-alpha01")

    // Force upgrade to jsoup 1.16.2 (b/309773103)
    stubs("org.jsoup:jsoup:1.16.2")
}

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