// This is auto-generated. DO NOT EDIT.

package {
    // A default list here prevents the license LSC from adding its own list which would
    // be unnecessary as every module in the sdk already has its own licenses property.
    default_applicable_licenses: ["Android-Apache-2.0"],
}

prebuilt_bootclasspath_fragment {
    name: "permission-module-sdk_com.android.permission-bootclasspath-fragment@1",
    sdk_member_name: "com.android.permission-bootclasspath-fragment",
    visibility: ["//visibility:public"],
    apex_available: ["com.android.permission"],
    licenses: ["permission-module-sdk_Android-Apache-2.0@1"],
    contents: [
        "permission-module-sdk_framework-permission@1",
        "permission-module-sdk_framework-permission-s@1",
    ],
    hidden_api: {
        stub_flags: "hiddenapi/stub-flags.csv",
        annotation_flags: "hiddenapi/annotation-flags.csv",
        metadata: "hiddenapi/metadata.csv",
        index: "hiddenapi/index.csv",
        all_flags: "hiddenapi/all-flags.csv",
    },
}

java_sdk_library_import {
    name: "permission-module-sdk_framework-permission@1",
    sdk_member_name: "framework-permission",
    visibility: ["//visibility:public"],
    apex_available: [
        "com.android.permission",
        "test_com.android.permission",
    ],
    licenses: ["permission-module-sdk_Android-Apache-2.0@1"],
    shared_library: false,
    public: {
        jars: ["sdk_library/public/framework-permission-stubs.jar"],
        stub_srcs: ["sdk_library/public/framework-permission.srcjar"],
        current_api: "sdk_library/public/framework-permission.txt",
        removed_api: "sdk_library/public/framework-permission-removed.txt",
        sdk_version: "module_current",
    },
    system: {
        jars: ["sdk_library/system/framework-permission-stubs.jar"],
        stub_srcs: ["sdk_library/system/framework-permission.srcjar"],
        current_api: "sdk_library/system/framework-permission.txt",
        removed_api: "sdk_library/system/framework-permission-removed.txt",
        sdk_version: "module_current",
    },
    module_lib: {
        jars: ["sdk_library/module-lib/framework-permission-stubs.jar"],
        stub_srcs: ["sdk_library/module-lib/framework-permission.srcjar"],
        current_api: "sdk_library/module-lib/framework-permission.txt",
        removed_api: "sdk_library/module-lib/framework-permission-removed.txt",
        sdk_version: "module_current",
    },
}

java_sdk_library_import {
    name: "permission-module-sdk_framework-permission-s@1",
    sdk_member_name: "framework-permission-s",
    visibility: ["//visibility:public"],
    apex_available: [
        "com.android.permission",
        "test_com.android.permission",
    ],
    licenses: ["permission-module-sdk_Android-Apache-2.0@1"],
    shared_library: false,
    public: {
        jars: ["sdk_library/public/framework-permission-s-stubs.jar"],
        stub_srcs: ["sdk_library/public/framework-permission-s.srcjar"],
        current_api: "sdk_library/public/framework-permission-s.txt",
        removed_api: "sdk_library/public/framework-permission-s-removed.txt",
        sdk_version: "module_current",
    },
    system: {
        jars: ["sdk_library/system/framework-permission-s-stubs.jar"],
        stub_srcs: ["sdk_library/system/framework-permission-s.srcjar"],
        current_api: "sdk_library/system/framework-permission-s.txt",
        removed_api: "sdk_library/system/framework-permission-s-removed.txt",
        sdk_version: "module_current",
    },
    module_lib: {
        jars: ["sdk_library/module-lib/framework-permission-s-stubs.jar"],
        stub_srcs: ["sdk_library/module-lib/framework-permission-s.srcjar"],
        current_api: "sdk_library/module-lib/framework-permission-s.txt",
        removed_api: "sdk_library/module-lib/framework-permission-s-removed.txt",
        sdk_version: "module_current",
    },
}

java_sdk_library_import {
    name: "permission-module-sdk_service-permission@1",
    sdk_member_name: "service-permission",
    visibility: ["//visibility:public"],
    apex_available: [
        "com.android.permission",
        "test_com.android.permission",
    ],
    licenses: ["permission-module-sdk_Android-Apache-2.0@1"],
    shared_library: false,
    public: {
        jars: ["sdk_library/public/service-permission-stubs.jar"],
        stub_srcs: ["sdk_library/public/service-permission.srcjar"],
        current_api: "sdk_library/public/service-permission.txt",
        removed_api: "sdk_library/public/service-permission-removed.txt",
        sdk_version: "module_current",
    },
    system_server: {
        jars: ["sdk_library/system-server/service-permission-stubs.jar"],
        stub_srcs: ["sdk_library/system-server/service-permission.srcjar"],
        current_api: "sdk_library/system-server/service-permission.txt",
        removed_api: "sdk_library/system-server/service-permission-removed.txt",
        sdk_version: "system_server_current",
    },
}

license {
    name: "permission-module-sdk_Android-Apache-2.0@1",
    sdk_member_name: "Android-Apache-2.0",
    visibility: ["//visibility:private"],
    license_kinds: ["SPDX-license-identifier-Apache-2.0"],
    license_text: ["licenses/build/soong/licenses/LICENSE"],
}

sdk_snapshot {
    name: "permission-module-sdk@1",
    visibility: ["//visibility:public"],
    bootclasspath_fragments: ["permission-module-sdk_com.android.permission-bootclasspath-fragment@1"],
    java_sdk_libs: [
        "permission-module-sdk_framework-permission@1",
        "permission-module-sdk_framework-permission-s@1",
        "permission-module-sdk_service-permission@1",
    ],
}
