API flagging macro until/starting_at for private and public

- Applies the starting_at_board_api macro also to private types

- Add a macro complementary to the starting_at_board_api macro to write rules if
the the board api level is lower than the specified api

(Re-land of aosp/3229062 without proc_compaction_proactiveness.
Cause: b/363981334)

Bug: 356832676
Bug: 358516352
Change-Id: I923d26ac581da3b947f8e8dde0db993e3bb637ba
diff --git a/private/file.te b/private/file.te
index 038e899..3cb8d18 100644
--- a/private/file.te
+++ b/private/file.te
@@ -213,3 +213,30 @@
 
 # /data/misc_ce/userId/storage_area_keys
 type storage_area_key_file, file_type, data_file_type, core_data_file_type;
+
+
+# Types added in 202504 in public/file.te
+until_board_api(202504, `
+    type binderfs_logs_transactions, fs_type;
+    type binderfs_logs_transaction_history, fs_type;
+')
+
+until_board_api(202504, `
+    type proc_cgroups, fs_type, proc_type;
+')
+
+until_board_api(202504, `
+    type sysfs_udc, fs_type, sysfs_type;
+')
+
+until_board_api(202504, `
+    type fs_bpf_lmkd_memevents_rb, fs_type, bpffs_type;
+    type fs_bpf_lmkd_memevents_prog, fs_type, bpffs_type;
+')
+
+until_board_api(202504, `
+    # boot otas for 16KB developer option
+    type vendor_boot_ota_file, vendor_file_type, file_type;
+')
+## END Types added in 202504 in public/file.te
+