permdock 0.7.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -3
- package/dist/a2a/index.d.ts +7 -7
- package/dist/a2a/index.js +8 -8
- package/dist/action-result-BcudBQOF.d.ts +19 -0
- package/dist/{adapter-context-CRhqyzCk.js → adapter-context-CIQpQxbE.js} +8 -2
- package/dist/{adoption-scan-D-feE7BE.js → adoption-scan-Ch07MdxN.js} +5 -5
- package/dist/agent/index.d.ts +2 -2
- package/dist/agent/index.js +1 -1
- package/dist/ai-sdk/index.d.ts +19 -13
- package/dist/ai-sdk/index.js +6 -6
- package/dist/{app-data-MuyzVqX8.js → app-data-UNNm07jV.js} +10 -7
- package/dist/{approval-header-CJACtHkv.js → approval-header-8QV6MU4H.js} +6 -3
- package/dist/{approval-prompt-K0faOLFp.d.ts → approval-prompt-3BqWczTt.d.ts} +13 -11
- package/dist/{approval-prompt-Dg5LeAcT.js → approval-prompt-B8hQY69x.js} +5 -6
- package/dist/approvals/index.d.ts +4 -4
- package/dist/approvals/index.js +6 -6
- package/dist/{approvals-CMRfsbBh.js → approvals-DnIBTuXE.js} +66 -42
- package/dist/{approvers-CqPOLD-o.js → approvers-B4r0N_Uz.js} +8 -2
- package/dist/{arazzo-ClrF3PVb.js → arazzo-BpS7LnV0.js} +2 -2
- package/dist/{arazzo-rdeJ8n1J.js → arazzo-CmQaGPkM.js} +6 -6
- package/dist/{args-CC3OwyHW.js → args-0FrVs5EH.js} +14 -7
- package/dist/astro/index.d.ts +30 -12
- package/dist/astro/index.js +2 -2
- package/dist/{audience-BrMs8c4o.js → audience-DTjR8xet.js} +8 -8
- package/dist/{auth-CscUX8Sy.js → auth--yPyZNgr.js} +19 -7
- package/dist/authzen/index.d.ts +34 -28
- package/dist/authzen/index.js +23 -20
- package/dist/{automation-DOtAFWdy.d.ts → automation-C6Jg75xq.d.ts} +42 -32
- package/dist/{automation-ySsxp_Yp.js → automation-x3KEUusw.js} +22 -21
- package/dist/better-auth/index.d.ts +2 -2
- package/dist/better-auth/index.js +13 -7
- package/dist/better-supabase/index.d.ts +357 -227
- package/dist/better-supabase/index.js +219 -140
- package/dist/{bind-D1nO6fiC.js → bind-BNQA9JK9.js} +26 -10
- package/dist/{bind-JDuvxjuW.d.ts → bind-YYjvfpB9.d.ts} +32 -12
- package/dist/{body-CH5of8Ne.js → body-CJQwYVa8.js} +3 -3
- package/dist/{body-text-QcXok_SI.js → body-text-DQhcmqdY.js} +8 -4
- package/dist/{boundary-BM8a_P6E.js → boundary-BV3O1eud.js} +8 -2
- package/dist/{boundary-BmHxVH1J.d.ts → boundary-C9ck-3uK.d.ts} +13 -4
- package/dist/{budget-NbEtbJC_.js → budget-BELja5A9.js} +6 -3
- package/dist/{budget-JqcRqyhK.d.ts → budget-hYsPz_yE.d.ts} +6 -3
- package/dist/{build-instance-DxE7czo9.js → build-instance-BWXqwQYU.js} +3 -3
- package/dist/{capability-L7NnfhiE.js → capability-BqX94r07.js} +31 -25
- package/dist/{capability-D4UC9TTW.d.ts → capability-Di9tiUvi.d.ts} +41 -29
- package/dist/{casbin-BHijLuHY.js → casbin-B7_yS-oo.js} +2 -2
- package/dist/{casbin-BW9pS47J.js → casbin-bHyIxTNQ.js} +16 -8
- package/dist/{casl-CmJlgziS.js → casl-C4OINZHI.js} +2 -2
- package/dist/{casl-UbI8v-Wq.js → casl-CHHoCldP.js} +19 -10
- package/dist/catalog/index.d.ts +51 -30
- package/dist/catalog/index.js +18 -15
- package/dist/{catalog-D69WhFii.js → catalog-CGlSwU6j.js} +20 -19
- package/dist/catalog-D3oS2GH3.js +1 -0
- package/dist/{catalog-BaMQfQ6Y.js → catalog-amPDr0JQ.js} +3 -3
- package/dist/{catalog-doc-CV9s6B1S.js → catalog-doc-DjMKzJp9.js} +28 -14
- package/dist/{catalog-fingerprint-C144oW4M.js → catalog-fingerprint-e6aCWosn.js} +18 -14
- package/dist/catalog-operations-DeHTrJSV.js +60 -0
- package/dist/{challenge-nGWma08S.js → challenge-DImNcR7B.js} +48 -27
- package/dist/chat/index.d.ts +1 -1
- package/dist/chat/index.js +13 -10
- package/dist/chat-sdk/index.d.ts +44 -26
- package/dist/chat-sdk/index.js +17 -17
- package/dist/{checks-BC_0mPIq.js → checks-CGkP3Z7A.js} +4 -1
- package/dist/{claims-map-7oQ3ue4X.js → claims-map-CKkoAAYF.js} +5 -2
- package/dist/{claims-map-Ca-QX8C6.d.ts → claims-map-D1Pb5oRq.d.ts} +8 -5
- package/dist/claude-agent/index.d.ts +6 -6
- package/dist/claude-agent/index.js +6 -3
- package/dist/clerk/index.d.ts +11 -7
- package/dist/clerk/index.js +6 -6
- package/dist/cli/bin.js +4 -4
- package/dist/cli/index.d.ts +82 -7
- package/dist/cli/index.js +6 -6
- package/dist/{clients-C7zLFuWT.d.ts → clients-C_NOET3z.d.ts} +5 -5
- package/dist/{clients-DjU5ABMy.js → clients-DYr3U86j.js} +3 -3
- package/dist/cloud/index.d.ts +84 -52
- package/dist/cloud/index.js +53 -39
- package/dist/{cloud-CO8pYtwr.js → cloud-3kWfjnYy.js} +4 -5
- package/dist/{codemod-BP6n8N9L.js → codemod-Bv5i-Mzo.js} +523 -201
- package/dist/{codemod-i4N2BhDc.js → codemod-D9Aiii1r.js} +3 -4
- package/dist/{collect-DNm3oKOk.js → collect-B80GYEot.js} +4 -5
- package/dist/collect-D-eroIfV.js +1 -0
- package/dist/{collect-BaWeMjwV.js → collect-WCl8cJQV.js} +26 -63
- package/dist/{compare-pfyVnBjE.js → compare-DTfyUunF.js} +2 -2
- package/dist/compile/index.d.ts +2 -2
- package/dist/compile/index.js +1 -1
- package/dist/{compile-COM2VKuN.d.ts → compile-BEklRUYo.d.ts} +36 -12
- package/dist/{compile-BAEO5bOk.js → compile-EzEMB-7v.js} +77 -33
- package/dist/{completion-BNdVf7X2.js → completion-_bc0OUQ-.js} +17 -8
- package/dist/config-BwPBfN0t.js +108 -0
- package/dist/{config-DGZzMV1B.js → config-D5XrLWpk.js} +2 -2
- package/dist/{config-report-Cm7UITNA.js → config-report-BmWIskD7.js} +9 -6
- package/dist/config-shape-ykV0Vm2n.js +134 -0
- package/dist/{connection-DjhIJSs2.js → connection-B72dg5Q2.js} +23 -22
- package/dist/{connector-schema-_VCSsdtD.js → connector-schema-CYLQNMYq.js} +3 -2
- package/dist/{context--uM9V3Ui.js → context-BnIzxTNE.js} +4 -3
- package/dist/convex/index.d.ts +13 -7
- package/dist/convex/index.js +9 -6
- package/dist/{core-CQkE8Esr.d.ts → core-CFepFiDP.d.ts} +49 -22
- package/dist/{core-B5-w6Kw9.js → core-DzVINFbU.js} +26 -20
- package/dist/{create-Cb86Z8Im.js → create-6EwRQlig.js} +10 -7
- package/dist/{create-DJrlhEp9.js → create-BLPKnJKa.js} +35 -25
- package/dist/{create-UTnUVETj.d.ts → create-BPUopdfL.d.ts} +70 -37
- package/dist/{create-QHuuPw3q.d.ts → create-BamXmeob.d.ts} +37 -29
- package/dist/{create-B2-CQqCI.d.ts → create-DBvUsgzK.d.ts} +49 -28
- package/dist/{credential-CIM7wHwA.js → credential-CyyyvCsL.js} +41 -38
- package/dist/{credentials-BpuTwd7a.js → credentials-CdDxp7jN.js} +6 -6
- package/dist/{deciding-columns-DRo2QM6E.js → deciding-columns-NB4wcyBf.js} +2 -2
- package/dist/{delegation-C5rOdTp5.js → delegation-CDB6_keF.js} +31 -22
- package/dist/delivery/index.d.ts +4 -4
- package/dist/delivery/index.js +5 -5
- package/dist/{delivery-rwOKLWRm.js → delivery-BupfvJIV.js} +34 -22
- package/dist/{delivery-event-xX4obB8F.js → delivery-event-JioK5YbS.js} +6 -6
- package/dist/denied-text-DHldhVUv.d.ts +22 -0
- package/dist/{describe-DZlnEtLy.js → describe-Bb4hGK5d.js} +5 -5
- package/dist/{describe-O0SwYIK8.d.ts → describe-BbFPBSms.d.ts} +5 -5
- package/dist/{device-BARQ8eYG.js → device-BwbJNmb2.js} +11 -8
- package/dist/{diff-Btr1c1Ow.js → diff-BwR1JdP2.js} +2 -2
- package/dist/{diff-DzT-xD13.js → diff-CQegtBAo.js} +22 -13
- package/dist/{digest-B3kc_PgQ.d.ts → digest-8Yx2CchM.d.ts} +3 -3
- package/dist/{doctor-BU1szn63.js → doctor-ClRVAtXQ.js} +287 -135
- package/dist/{doctor-BoK_y0KO.js → doctor-LPMYjSqO.js} +4 -4
- package/dist/drizzle/index.d.ts +33 -19
- package/dist/drizzle/index.js +17 -9
- package/dist/elysia/index.d.ts +17 -11
- package/dist/elysia/index.js +5 -5
- package/dist/{errors-BKy0EfhN.js → errors-B6R_lg2a.js} +13 -4
- package/dist/{errors-B_Qg9D3e.d.ts → errors-BIM4MFsJ.d.ts} +22 -6
- package/dist/{errors-BWXBMaKK.d.ts → errors-CHwoRRpB.d.ts} +4 -1
- package/dist/{errors-DpP_U6Bf.js → errors-Vpu6rKHl.js} +13 -10
- package/dist/{evaluate-B_oqFbWC.js → evaluate-BAmf_AQd.js} +153 -82
- package/dist/{evaluations-BCddEOfO.d.ts → evaluations-DOWuBpWv.d.ts} +11 -5
- package/dist/{evaluations-DReoiVBw.js → evaluations-IBceAeKT.js} +40 -19
- package/dist/eve/index.d.ts +9 -6
- package/dist/eve/index.js +4 -4
- package/dist/{event-time-CsegxXxB.js → event-time-BGy48400.js} +8 -4
- package/dist/{expiry-D4_YKRKD.js → expiry-6XByK0dm.js} +8 -5
- package/dist/express/index.d.ts +9 -6
- package/dist/express/index.js +9 -6
- package/dist/fastify/index.d.ts +16 -10
- package/dist/fastify/index.js +8 -5
- package/dist/{fetch-adapter-CuhyYwC1.d.ts → fetch-adapter-BIbBAtPZ.d.ts} +9 -6
- package/dist/{fetch-adapter-De-u6vhJ.js → fetch-adapter-dPTgJVHd.js} +14 -11
- package/dist/fields-D0vUI6dq.js +498 -0
- package/dist/{files-acUbNwWt.js → files-B3AA05f1.js} +8 -5
- package/dist/{files-D_JIzUrP.js → files-BSjrtIHw.js} +11 -4
- package/dist/{fixtures-BTMW6zgU.js → fixtures-A1_sp_tR.js} +15 -6
- package/dist/{flags-aaeRAdiD.js → flags-DXjoTVbS.js} +2 -2
- package/dist/{freeze-CrU8nQeX.js → freeze-jjan0lCv.js} +4 -1
- package/dist/{from-snapshot-Bz469dIh.js → from-snapshot-DCakWRsr.js} +18 -15
- package/dist/gen-BFfzZSLH.js +58 -0
- package/dist/gen-BtfFWGbz.js +827 -0
- package/dist/{generate-3FNO5P5Q.js → generate-CRVV5V7l.js} +14 -8
- package/dist/generate-CezbCaTI.js +275 -0
- package/dist/{grantee-BrRANrpT.js → grantee-Dke-9rd1.js} +4 -4
- package/dist/{grantee-conditions-C6P1Tvol.js → grantee-conditions-BrYPe-w0.js} +12 -12
- package/dist/{grantee-match-0RtHWQDx.js → grantee-match-7RZZvoT_.js} +12 -6
- package/dist/{graph-sql-B-dsAT6j.d.ts → graph-sql-BwFC4Qjs.d.ts} +3 -3
- package/dist/h3/index.d.ts +10 -7
- package/dist/h3/index.js +3 -3
- package/dist/headers-B9jQxjtW.d.ts +10 -0
- package/dist/{helpers-DY3vXuGs.js → helpers-DJicaG6f.js} +40 -28
- package/dist/hono/index.d.ts +16 -10
- package/dist/hono/index.js +5 -5
- package/dist/{hosted-XBgU6RGT.js → hosted-D0IzESu_.js} +42 -21
- package/dist/{hosted-BmjzxQhp.d.ts → hosted-DVxlLZMe.d.ts} +33 -21
- package/dist/{http-ujKm0JXE.js → http-DH94eh6f.js} +4 -4
- package/dist/{http-BBoKefeS.js → http-DKLXrFGk.js} +13 -7
- package/dist/{http-Ca3Sr5x1.js → http-DOL33cO0.js} +11 -8
- package/dist/{import-DB2EG_iy.js → import-ACkOrv6g.js} +6 -6
- package/dist/{import-Bz0GefWg.js → import-CST57XLp.js} +64 -51
- package/dist/{index-CMiPH2Tv.d.ts → index-BinlXeU-.d.ts} +64 -37
- package/dist/{index-BSfRl0hZ.d.ts → index-CV-7DWeD.d.ts} +64 -52
- package/dist/{index-BE8y3moU.d.ts → index-DJwEgYzA.d.ts} +127 -82
- package/dist/{index-DH9DUDEM.d.ts → index-Dj2qF9VC.d.ts} +54 -30
- package/dist/{index-BTkwrK7v.d.ts → index-vYjMrXyK.d.ts} +336 -173
- package/dist/{index-DLwcuCN_.d.ts → index-ymept53A.d.ts} +51 -30
- package/dist/index.d.ts +22 -22
- package/dist/index.js +34 -34
- package/dist/{init-B-4t1NzC.js → init-BjuFDYT1.js} +10 -10
- package/dist/{init-5TXNji88.js → init-txYTuW9u.js} +5 -5
- package/dist/{instance-options-CU0YQCLH.d.ts → instance-options-CoHn-0e8.d.ts} +4 -4
- package/dist/{instance-snapshot-CjcwnEiV.js → instance-snapshot-DuWf1cT3.js} +86 -61
- package/dist/{instant-BluqDvyS.js → instant-DK3Iz83e.js} +2 -2
- package/dist/{internals-Dk8A8fX3.js → internals-B3IgHrvo.js} +6 -3
- package/dist/{json-schema-B-vAwlde.js → json-schema-BPGa-RjQ.js} +9 -3
- package/dist/{json-schema-CN_iLFH2.d.ts → json-schema-BfXgnRNT.d.ts} +4 -4
- package/dist/jwt/index.d.ts +57 -27
- package/dist/jwt/index.js +24 -21
- package/dist/{kernel-DVExUwkp.js → kernel-qv4cr9w8.js} +32 -23
- package/dist/kysely/index.d.ts +49 -33
- package/dist/kysely/index.js +9 -7
- package/dist/{live-options-BaAFCIiu.js → live-options-BBIT68le.js} +2 -2
- package/dist/{load-DxroEzH1.js → load-DjSU5KXO.js} +6 -6
- package/dist/load-Dm0pSYH3.js +1 -0
- package/dist/{login-ClSJh5t5.js → login-CfImTJGb.js} +4 -4
- package/dist/{login-WC9HPJpU.js → login-CgfCTO3F.js} +16 -9
- package/dist/{manifest-Dv6q4i5s.js → manifest-B2QPh19C.js} +49 -38
- package/dist/{manifest-BVhExYhw.d.ts → manifest-CzzWtnAb.d.ts} +126 -31
- package/dist/{manifest-schema-Cv492Qev.js → manifest-schema-2r37XRhD.js} +44 -3
- package/dist/{manifest-B79YuF2T.js → manifest-wg8WkkpD.js} +6 -6
- package/dist/{map-claims-etGIS_Dv.js → map-claims-C-nv08_n.js} +16 -9
- package/dist/{map-error-BQGyDm_M.js → map-error-pasIGqMT.js} +7 -7
- package/dist/{markers-C6joDI3o.js → markers-BeHZ4x9Q.js} +20 -5
- package/dist/mcp/index.d.ts +114 -61
- package/dist/mcp/index.js +70 -40
- package/dist/{migrate-Dodel0IJ.js → migrate-B7oP_sQU.js} +35 -17
- package/dist/module-values-BJTBdo6y.js +107 -0
- package/dist/nest/index.d.ts +23 -13
- package/dist/nest/index.js +18 -11
- package/dist/next/client.d.ts +5 -2
- package/dist/next/client.js +1 -1
- package/dist/next/index.d.ts +79 -26
- package/dist/next/index.js +121 -10
- package/dist/next/plugin.d.ts +1 -1
- package/dist/next/plugin.js +4 -3
- package/dist/node/index.d.ts +5 -5
- package/dist/node/index.js +3 -3
- package/dist/{ocsf-BFp-PZZA.js → ocsf-TcjRBgIs.js} +15 -5
- package/dist/openai/index.d.ts +13 -7
- package/dist/openai/index.js +3 -3
- package/dist/openapi/index.d.ts +51 -30
- package/dist/openapi/index.js +2 -2
- package/dist/{openapi-ztVaux6j.js → openapi-BGeuunWC.js} +23 -14
- package/dist/{openapi-DMocl1bh.js → openapi-BIpw3Mb7.js} +4 -5
- package/dist/{openapi-Ddb4628T.js → openapi-BOsx0xn9.js} +33 -18
- package/dist/{operation-findings-kRcEp8lE.js → operation-findings-CXtFzlKJ.js} +3 -3
- package/dist/{operations-BNLes61x.d.ts → operations-Ci_rT6Uo.d.ts} +10 -7
- package/dist/orpc/index.d.ts +68 -14
- package/dist/orpc/index.js +62 -13
- package/dist/otel/index.d.ts +7 -4
- package/dist/otel/index.js +8 -5
- package/dist/{output-DgSDLrta.js → output-DV5dwOTs.js} +9 -5
- package/dist/output-files-BHOIlrfD.js +1 -0
- package/dist/{output-files-CCMdcFWb.js → output-files-BIQ_9pIs.js} +29 -17
- package/dist/ownership-DA5YdYTm.js +1059 -0
- package/dist/{parse-Ddhz2xf4.js → parse-1_ZheTW5.js} +16 -13
- package/dist/parse-local-manifest-CCmbhnxP.d.ts +10 -0
- package/dist/{parse-local-manifest-T1Q8X3A2.js → parse-local-manifest-DEiCF4ah.js} +19 -7
- package/dist/{parse-request-D_tUXG6M.js → parse-request-CwCZpyjV.js} +7 -8
- package/dist/{paths-DXSHAMIa.js → paths-CUvURzHp.js} +4 -1
- package/dist/pdp/index.d.ts +9 -6
- package/dist/pdp/index.js +20 -13
- package/dist/{peer-DOzzMfZL.js → peer-C9LvBCcb.js} +1 -1
- package/dist/{peer-12Q5I_RH.js → peer-Q0fuZ6hx.js} +9 -3
- package/dist/{permdock-BfWEeMqk.js → permdock-BvjivVb9.js} +200 -140
- package/dist/{permdock-Dco6dyCK.d.ts → permdock-CprAPN3w.d.ts} +260 -129
- package/dist/{permission-registry-DpPtSKNZ.js → permission-registry-B8tYxPIt.js} +23 -10
- package/dist/{permission-types-DhNEmoRG.d.ts → permission-types-CAY-GU7e.d.ts} +127 -41
- package/dist/{permissions-CoqCOfJ3.d.ts → permissions-Bx6UI8n1.d.ts} +6 -3
- package/dist/{permissions-CyH2MV_B.js → permissions-CVXmRILq.js} +3 -3
- package/dist/{permissions-DArULThq.js → permissions-CYcHj_w7.js} +8 -5
- package/dist/pg-DQTqRrou.js +60 -0
- package/dist/{pins-8ILTftC9.js → pins-nqarl3oE.js} +4 -1
- package/dist/{pkce-5h8NgMQJ.js → pkce-CnmmYqUZ.js} +1 -1
- package/dist/{policy-B7dg_yzu.d.ts → policy-BycVKnXv.d.ts} +5 -5
- package/dist/{policy-DaJy4nK4.js → policy-CLQ8__GF.js} +43 -23
- package/dist/{policy-from-catalog-DFWYkNdu.js → policy-from-catalog-CU3An8uP.js} +28 -25
- package/dist/{policy-module-CTlwMvLI.js → policy-module-xym9fnSq.js} +12 -6
- package/dist/{policy-types-B-F-qAZk.d.ts → policy-types-DGIO_gxq.d.ts} +782 -357
- package/dist/{postgres-store-BL9M_CA1.js → postgres-store-DcyrPS-r.js} +43 -16
- package/dist/{postgrest-r5faDIzD.js → postgrest-5Dr3W64L.js} +84 -86
- package/dist/{postgrest-CYacM_u7.d.ts → postgrest-D5nUGm-c.d.ts} +55 -35
- package/dist/powersync-B701tvhE.js +1 -0
- package/dist/{powersync-13odBwiM.js → powersync-Bg8u-JcR.js} +3 -3
- package/dist/{powersync-53ryOZip.js → powersync-CJrT1DSc.js} +127 -69
- package/dist/preset/index.d.ts +38 -28
- package/dist/preset/index.js +1 -1
- package/dist/{preset-CHTbd-DQ.js → preset-BjLzeFpp.js} +56 -32
- package/dist/{principal-source-pHneukrx.js → principal-source-C6N60GtM.js} +10 -10
- package/dist/prisma/index.d.ts +69 -41
- package/dist/prisma/index.js +21 -17
- package/dist/{problem-CTviyH5L.js → problem-BVLHFK33.js} +41 -21
- package/dist/{problem-details-cn5X30gZ.js → problem-details-CLDgX1KV.js} +13 -4
- package/dist/{problem-types-CJ2325SZ.js → problem-types-DSsRfONQ.js} +4 -1
- package/dist/{prompt-DwtVemER.js → prompt-BYc6drYW.js} +4 -1
- package/dist/protected-action-D8x73IGm.d.ts +58 -0
- package/dist/protected-action-DUYqb-Ma.js +80 -0
- package/dist/{protected-DXE3cQYg.js → protected-action-QEA8arRB.js} +48 -14
- package/dist/{provider-BQsTYYy0.js → provider-C55OGXJ7.js} +5 -4
- package/dist/{provider-Csk-THAn.d.ts → provider-DfLeek9O.d.ts} +1 -1
- package/dist/{provider-store-IgqQipCO.js → provider-store-CaTv00tr.js} +13 -9
- package/dist/{pull-CN5OLxrF.js → pull-2nJr0qg_.js} +12 -11
- package/dist/pull-C3EEGzSw.js +1 -0
- package/dist/{push-tVdG8dUL.js → push-Bn-lMEmI.js} +19 -13
- package/dist/{pushed-policy-CmYeSQqq.js → pushed-policy-CDuOL2de.js} +10 -7
- package/dist/{pushed-policy-BbcY9r_4.d.ts → pushed-policy-CryQheKq.d.ts} +12 -6
- package/dist/react/index.d.ts +9 -8
- package/dist/react/index.js +7 -6
- package/dist/react/provider-client.d.ts +1 -1
- package/dist/react/provider-client.js +1 -1
- package/dist/react-native/index.d.ts +94 -55
- package/dist/react-native/index.js +200 -61
- package/dist/{refs-CNJBiTFo.js → refs-C8BKxc_e.js} +2 -2
- package/dist/{relation-walk-3OyDBF0S.js → relation-walk-DK_gkgL7.js} +12 -9
- package/dist/{relations-BnCWnJGI.js → relations-BxvRvDHK.js} +3 -3
- package/dist/{replay-Du1tJjG7.js → replay-BU09ad4L.js} +1 -1
- package/dist/{replay-DCDD_ZfL.d.ts → replay-Bs9Df2fQ.d.ts} +1 -1
- package/dist/{request-context-BykKLmyE.js → request-context-Duzdf0cd.js} +8 -8
- package/dist/{request-schema-CMreVuFM.js → request-schema-DhX7UbfQ.js} +4 -1
- package/dist/resend/index.d.ts +34 -28
- package/dist/resend/index.js +29 -29
- package/dist/resolve-names-ConCSj1y.js +201 -0
- package/dist/{resource-relations-D_jw0BFx.js → resource-relations-8-pCScBO.js} +18 -9
- package/dist/{retire-Wj6dkyDE.js → retire-B2xffQgY.js} +15 -6
- package/dist/{revocations-R07lFBnX.d.ts → revocations-BaUXHM1N.d.ts} +6 -3
- package/dist/{rls-Ck_PocSp.js → rls-Ba9wN0SP.js} +13 -6
- package/dist/{rls-CxBZb4rZ.js → rls-Cx0dtsB7.js} +310 -128
- package/dist/{role-builder-C1VJzvcr.js → role-builder-BK2-T6oD.js} +41 -20
- package/dist/{row-conditions-h2HythXQ.js → row-conditions-BAGHOmVq.js} +4 -3
- package/dist/{rpc-Bk1bE-ch.js → rpc-vHIwyXCp.js} +8 -5
- package/dist/run-Ck22anC2.js +1 -0
- package/dist/{run-uLD2aWuO.js → run-PbRlXTfh.js} +26 -23
- package/dist/{run-ticket-BpNi7BCi.d.ts → run-ticket-B2o2Kxz8.d.ts} +29 -14
- package/dist/{run-ticket-B5d_63Ma.js → run-ticket-Dv7aF7Dk.js} +9 -9
- package/dist/{runtime-Vif3_-zf.js → runtime-BGnrOkVH.js} +5 -2
- package/dist/{saas-Az_Kz-4D.js → saas-DK4V-3Is.js} +42 -29
- package/dist/{scan-DSljDE1Y.js → scan-CRTj6fke.js} +1 -1
- package/dist/{schema-B4v0Qrac.js → schema-BOJjqlWL.js} +3 -2
- package/dist/{schema-gIcCx7zM.js → schema-BTsE1WRT.js} +8 -4
- package/dist/scim/index.d.ts +2 -2
- package/dist/scim/index.js +2 -2
- package/dist/{scim-C7JYhySg.js → scim-D8YupzX1.js} +2 -2
- package/dist/{scim-YNieBO1U.js → scim-jJBJ7g1Z.js} +33 -15
- package/dist/{scopes-BHsc-wp-.js → scopes-0Up_UA2t.js} +41 -23
- package/dist/server/index.d.ts +11 -11
- package/dist/server/index.js +12 -12
- package/dist/{server-Bnga6I50.js → server-3cVlTLde.js} +31 -31
- package/dist/{server-types-C4gZUEZy.d.ts → server-types-CyRN0-Cd.d.ts} +88 -46
- package/dist/{sha256-D9ihqmvd.js → sha256-C-4WXKIu.js} +4 -3
- package/dist/{shared-fMKOv8hP.js → shared-Afctg7B0.js} +65 -32
- package/dist/{shared-C8LjUdVU.js → shared-l0oGGetg.js} +9 -6
- package/dist/{signals-D3NcTKUS.js → signals-B1vHR3fN.js} +2 -2
- package/dist/{sink-Cp_Eot9W.d.ts → sink-B5zoUW_O.d.ts} +44 -20
- package/dist/{sink-BEZSlMS_.js → sink-D9_vh372.js} +32 -21
- package/dist/{skills-g_3BS9NC.js → skills-C9uKfSF5.js} +3 -3
- package/dist/{skills-Dcjw9_1C.js → skills-CQQcuGBi.js} +12 -8
- package/dist/{snapshot-CbGmYiJx.js → snapshot-CXlzi69u.js} +21 -18
- package/dist/{snapshot-cache-Pahd3IYJ.d.ts → snapshot-cache-BjAWkchD.d.ts} +21 -12
- package/dist/{snapshot-cache-DT2Kx1F8.js → snapshot-cache-Bx_4xC_6.js} +14 -11
- package/dist/solid/index.d.ts +55 -16
- package/dist/solid/index.js +46 -12
- package/dist/solid-start/index.d.ts +30 -12
- package/dist/solid-start/index.js +3 -3
- package/dist/{sources-B-zYB4GS.js → sources-CMAM-2A3.js} +46 -27
- package/dist/{sources-DEEuGb8S.d.ts → sources-CWG32C0G.d.ts} +126 -53
- package/dist/{sql-B96movIM.js → sql-0WjxIp9g.js} +28 -7
- package/dist/{sql-CDEPCA0g.d.ts → sql-B80DFdpG.d.ts} +2 -2
- package/dist/{src-DLFrtrrC.js → src-C_pi2Rnh.js} +292 -101
- package/dist/ssf/index.d.ts +3 -3
- package/dist/ssf/index.js +47 -35
- package/dist/{standard-webhooks-DgFFD-Ga.js → standard-webhooks-D67a3nzk.js} +5 -5
- package/dist/{standard-webhooks-B_qRg0ws.d.ts → standard-webhooks-DOYEuOLx.d.ts} +7 -7
- package/dist/{store-DSP9oGvh.js → store-RNFvaJJv.js} +32 -26
- package/dist/{store-options-B_poyYvg.js → store-options-Dil3lraY.js} +105 -15
- package/dist/stores-DZJvxFIZ.d.ts +59 -0
- package/dist/{stores-BqEuHC05.js → stores-DxZWDXCs.js} +42 -5
- package/dist/{stream-2Vwhl7Er.d.ts → stream-9y9qw51m.d.ts} +4 -3
- package/dist/{stream-CvdUS9V1.js → stream-CDvF0sJm.js} +5 -5
- package/dist/{style-Ds1gNm77.js → style-DblOtSga.js} +1 -1
- package/dist/{style-Cqo7-73x.js → style-Ds11Hmk4.js} +2 -1
- package/dist/{subject-settings-CkEwrw3W.js → subject-settings-8sH5HlII.js} +8 -4
- package/dist/{row-check-Dt35czLy.d.ts → subject-settings-vNW8qmUH.d.ts} +30 -18
- package/dist/supabase/index.d.ts +48 -38
- package/dist/supabase/index.js +5 -5
- package/dist/supabase/middleware.d.ts +19 -13
- package/dist/supabase/middleware.js +7 -7
- package/dist/{supabase--0aJdLEd.js → supabase-DnMMg5Fn.js} +79 -35
- package/dist/{supabase-Bqp7iIY2.js → supabase-SBs3MYUE.js} +3 -3
- package/dist/supabase-hook-C0FyEACZ.js +1 -0
- package/dist/{supabase-hook-Dg0SrQWR.js → supabase-hook-CrgU06WH.js} +175 -196
- package/dist/{supautils-MESd81bF.js → supautils-ByezN3b8.js} +385 -219
- package/dist/{support-session-Cna49-3f.js → support-session-BsmPCbz8.js} +21 -21
- package/dist/svelte/PermissionBoundary.svelte +2 -6
- package/dist/svelte/Protected.svelte +2 -8
- package/dist/svelte/index.d.ts +9 -8
- package/dist/svelte/index.js +10 -9
- package/dist/svelte/runtime.d.ts +4 -4
- package/dist/svelte/runtime.js +4 -4
- package/dist/svelte/source.d.ts +9 -8
- package/dist/svelte/source.js +6 -5
- package/dist/sveltekit/index.d.ts +30 -12
- package/dist/sveltekit/index.js +2 -2
- package/dist/{ownership-Z2LpxsGa.js → tables-BqrxBCir.js} +641 -1104
- package/dist/tanstack-start/index.d.ts +22 -10
- package/dist/tanstack-start/index.js +2 -2
- package/dist/{target-Bw37TFNA.js → target-qdEAnnhU.js} +6 -6
- package/dist/{tenancy-CmeBQ6Nv.js → tenancy-5d1zVBvK.js} +25 -19
- package/dist/terminal/index.d.ts +23 -14
- package/dist/terminal/index.js +17 -20
- package/dist/testing/core.d.ts +1 -1
- package/dist/testing/core.js +1 -1
- package/dist/testing/fixtures/index.d.ts +8 -5
- package/dist/testing/fixtures/index.js +78 -17
- package/dist/testing/index.d.ts +225 -141
- package/dist/testing/index.js +352 -234
- package/dist/testing/saas/index.d.ts +43 -27
- package/dist/testing/saas/index.js +2 -2
- package/dist/testing/saas/permissions.d.ts +1 -1
- package/dist/testing/saas/permissions.js +1 -1
- package/dist/{text-diff-DhITNCnD.js → text-diff-BtfSmdUo.js} +2 -2
- package/dist/{thenable-yD7SabqG.js → thenable-BNSM1U2R.js} +12 -3
- package/dist/{time-DkWjdL98.js → time-nR1JesoH.js} +32 -8
- package/dist/{token-2qYDvXz2.js → token-DC9EQiet.js} +14 -12
- package/dist/{tool-refusal-reAhIzdl.js → tool-refusal-Qpjs_W6M.js} +5 -2
- package/dist/trpc/index.d.ts +11 -8
- package/dist/trpc/index.js +15 -9
- package/dist/type-helpers-c7Xo_2Cu.d.ts +50 -0
- package/dist/{types-CfiKC5aN.d.ts → types-B2efzoSX.d.ts} +14 -11
- package/dist/{types-CIeZcG8v.d.ts → types-B6ExllNo.d.ts} +2 -2
- package/dist/{types-DBHftjgS.d.ts → types-BB-zWDcR.d.ts} +45 -33
- package/dist/{types-BfVmNJO5.d.ts → types-BMVDHvI0.d.ts} +128 -50
- package/dist/{types-DXmwu78Z.d.ts → types-CEinc15V.d.ts} +31 -14
- package/dist/{types-g7Oy6Zg4.d.ts → types-CN0LsqbK.d.ts} +47 -24
- package/dist/{types-CeIscIKp.d.ts → types-CWBsAwqn.d.ts} +23 -12
- package/dist/{types-DqzsnlSA.js → types-CcUXciSj.js} +17 -5
- package/dist/{types-BWZybqs9.d.ts → types-CzOeVvcC.d.ts} +384 -203
- package/dist/{types-DC44-hqb.d.ts → types-DLvhVm1r.d.ts} +59 -32
- package/dist/{types-D3A19w4A.d.ts → types-DlelvQk4.d.ts} +22 -13
- package/dist/{types-cTos-H7p.d.ts → types-DsHGPtkR.d.ts} +68 -32
- package/dist/{types-BXMYB7BY.d.ts → types-ZzRGoViD.d.ts} +77 -24
- package/dist/{types-CQVEQawv.d.ts → types-rCRV4Ge-.d.ts} +24 -14
- package/dist/types-tQB2CEnY.d.ts +262 -0
- package/dist/unplugin/index.d.ts +1 -1
- package/dist/unplugin/index.js +2 -2
- package/dist/usage-0hjZPIRX.js +1 -0
- package/dist/{usage-Bybmck7f.js → usage-B9EtHWLa.js} +50 -26
- package/dist/{usage-CDaLXCfL.js → usage-CBzgwfIs.js} +2 -2
- package/dist/{validation-error-ZfUHbKvf.js → validation-error-CYg2kJEw.js} +4 -1
- package/dist/{validation-error-CQpoquwj.d.ts → validation-error-uvp-kyfO.d.ts} +5 -2
- package/dist/{validity-CZ7-y0Cj.js → validity-Buc7w8E9.js} +13 -10
- package/dist/{verifier-DHuh-okk.js → verifier-DUV6pLqZ.js} +10 -4
- package/dist/{verify-pe8rL_Qw.js → verify-DlUcTDBz.js} +148 -487
- package/dist/version-DMQ0dnN5.js +48 -0
- package/dist/version-DizhmD72.js +1 -0
- package/dist/{views-BB8E9dTP.js → views-CD8wuL4Z.js} +19 -6
- package/dist/{vocabulary-Bg3eeT2H.d.ts → vocabulary-DEJ5j4mR.d.ts} +7 -4
- package/dist/vue/index.d.ts +71 -22
- package/dist/vue/index.js +50 -13
- package/dist/{waiter-DwEyouan.d.ts → waiter-CqUKX6CY.d.ts} +13 -10
- package/dist/{waiter-BGUtGYoU.js → waiter-aBLM63_f.js} +1 -1
- package/dist/{watch-C-4VmFlL.js → watch-BFDKqmUa.js} +8 -8
- package/dist/watch-ClLuO2TL.js +1 -0
- package/dist/webmcp/index.d.ts +11 -11
- package/dist/webmcp/index.js +8 -5
- package/dist/{where-scope-wq2coopv.js → where-scope-DlCdCM_8.js} +24 -18
- package/dist/{who-can-BwNsI_Js.js → who-can-BoDJm0Nc.js} +23 -20
- package/dist/workflow/index.d.ts +3 -3
- package/dist/workflow/index.js +13 -13
- package/dist/workflow-sdk/index.d.ts +19 -13
- package/dist/workflow-sdk/index.js +6 -6
- package/dist/{wrap-CiSc_KCq.js → wrap-B2wziJI_.js} +4 -4
- package/dist/{wrap-B6R0cMRL.d.ts → wrap-DxXB54Wu.d.ts} +8 -5
- package/package.json +8 -8
- package/schemas/catalog-v1.json +3 -0
- package/schemas/supabase-manifest-v1.json +33 -1
- package/skills/permdock-credentials/references/tokens-keys-links.md +8 -6
- package/skills/permdock-data/references/queries-and-rls.md +2 -1
- package/skills/permdock-tenancy/references/ownership-and-custom-roles.md +2 -2
- package/skills/permdock-wire/references/adapters.md +16 -23
- package/dist/catalog-BCCjSAdH.js +0 -1
- package/dist/collect-k_Dulxr5.js +0 -1
- package/dist/config-CoQHDrDi.js +0 -166
- package/dist/denied-text-D4qkEtFz.d.ts +0 -19
- package/dist/fields-ClcQLrVc.js +0 -238
- package/dist/generate-CNU1pIOo.js +0 -171
- package/dist/headers-BIjfMaoC.js +0 -8
- package/dist/headers-CIbDTUTK.d.ts +0 -7
- package/dist/load-DrMHXzgN.js +0 -1
- package/dist/output-files-DPAY7-GX.js +0 -1
- package/dist/package-root-Dk_ETdkp.js +0 -31
- package/dist/parse-local-manifest-e4mdwAKd.d.ts +0 -10
- package/dist/policies-B2lZIurj.js +0 -295
- package/dist/powersync-CExtTLyA.js +0 -1
- package/dist/problem-details-Tcfmj3bV.d.ts +0 -7
- package/dist/protected-BwZYL1X_.d.ts +0 -39
- package/dist/pull-Cty6Ovyu.js +0 -1
- package/dist/run-Bz7DXGEv.js +0 -1
- package/dist/stores-BAZwSYZA.d.ts +0 -31
- package/dist/supabase-hook-DJxC4PoP.js +0 -1
- package/dist/types-CKV71kKh.d.ts +0 -172
- package/dist/usage-y-kBNdqs.js +0 -1
- package/dist/version-CEbQ5UeM.js +0 -18
- package/dist/version-DXkYUISx.js +0 -1
- package/dist/watch-Bd9mx3rd.js +0 -1
|
@@ -1,15 +1,18 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { s as PolicySource } from "./hosted-
|
|
3
|
-
import { m as ApprovalStore, u as ApprovalRequest } from "./types-
|
|
4
|
-
import { a as CatalogDocument } from "./types-
|
|
5
|
-
import { a as CatalogFinding } from "./sink-
|
|
1
|
+
import { J as DecisionSink, ct as SnapshotSource, hr as Subject, ht as TokenVerifier, mt as TokenSigner } from "./policy-types-DGIO_gxq.js";
|
|
2
|
+
import { s as PolicySource } from "./hosted-DVxlLZMe.js";
|
|
3
|
+
import { m as ApprovalStore, u as ApprovalRequest } from "./types-DLvhVm1r.js";
|
|
4
|
+
import { a as CatalogDocument } from "./types-ZzRGoViD.js";
|
|
5
|
+
import { a as CatalogFinding } from "./sink-B5zoUW_O.js";
|
|
6
6
|
//#region src/cloud/types.d.ts
|
|
7
7
|
type CloudEndpointOptions = {
|
|
8
8
|
readonly url?: string;
|
|
9
9
|
readonly environment?: string;
|
|
10
10
|
};
|
|
11
11
|
type CloudEndpoints = {
|
|
12
|
-
/**
|
|
12
|
+
/**
|
|
13
|
+
* The environment URL, `<url>/v1/environments/<env>`: `iss` and `aud` of the
|
|
14
|
+
* policy document.
|
|
15
|
+
*/
|
|
13
16
|
readonly issuer: string;
|
|
14
17
|
/** The environment's JWK Set URL, for `joseTokenVerifier({ jwks })`. */
|
|
15
18
|
readonly jwks: string;
|
|
@@ -24,51 +27,60 @@ type CloudConnectionOptions = CloudEndpointOptions & {
|
|
|
24
27
|
type CloudApproverOptions = {
|
|
25
28
|
/**
|
|
26
29
|
* Signs the token with a key the environment trusts as an issuer, such as
|
|
27
|
-
* `joseTokenSigner` over your own key. Never `cloudSigner`: a client key
|
|
28
|
-
*
|
|
30
|
+
* `joseTokenSigner` over your own key. Never `cloudSigner`: a client key that
|
|
31
|
+
* could mint approver tokens could forge any approver.
|
|
29
32
|
*/
|
|
30
33
|
readonly signer: TokenSigner;
|
|
31
|
-
/**
|
|
34
|
+
/**
|
|
35
|
+
* `aud` of the token; defaults to `<issuer>/approvals`, the environment URL
|
|
36
|
+
* plus `/approvals`.
|
|
37
|
+
*/
|
|
32
38
|
readonly audience?: string | readonly string[];
|
|
33
39
|
/**
|
|
34
40
|
* The `holder(permission)` approvers of `request` that `approver` holds,
|
|
35
41
|
* typically `approverPermissions(request, permdockFor(approver))`. Signed
|
|
36
|
-
* into the token as `permissions`; without it the verdict's own
|
|
37
|
-
*
|
|
42
|
+
* into the token as `permissions`; without it the verdict's own `permissions`
|
|
43
|
+
* are signed. A throw signs none.
|
|
38
44
|
*/
|
|
39
45
|
readonly permissions?: (request: ApprovalRequest, approver: Subject) => readonly string[] | Promise<readonly string[]>;
|
|
40
46
|
/**
|
|
41
47
|
* The relation approvers of `request` that `approver` holds, typically
|
|
42
|
-
* `approverRelations(request, approver, { relations, permissions })`.
|
|
43
|
-
*
|
|
44
|
-
*
|
|
48
|
+
* `approverRelations(request, approver, { relations, permissions })`. Signed
|
|
49
|
+
* into the token as `relations`; without it the verdict's own `relations` are
|
|
50
|
+
* signed. A throw signs none.
|
|
45
51
|
*/
|
|
46
52
|
readonly relations?: (request: ApprovalRequest, approver: Subject) => readonly string[] | Promise<readonly string[]>;
|
|
47
53
|
};
|
|
48
54
|
type CloudOptions = CloudConnectionOptions & {
|
|
49
55
|
/**
|
|
50
|
-
* Proves the approver on `approvals.resolve`. Without it, every resolve but
|
|
51
|
-
*
|
|
56
|
+
* Proves the approver on `approvals.resolve`. Without it, every resolve but a
|
|
57
|
+
* `system` rejection throws `approver-unauthenticated` and sends nothing.
|
|
52
58
|
*/
|
|
53
59
|
readonly approver?: CloudApproverOptions;
|
|
54
60
|
readonly flushAt?: number;
|
|
55
|
-
/**
|
|
61
|
+
/**
|
|
62
|
+
* Most events the sink holds while the Cloud is unreachable (default 10 000);
|
|
63
|
+
* the oldest are dropped first.
|
|
64
|
+
*/
|
|
56
65
|
readonly capacity?: number;
|
|
57
66
|
readonly waitUntil?: (task: Promise<void>) => void;
|
|
58
|
-
/**
|
|
67
|
+
/**
|
|
68
|
+
* The CloudEvents `source` of every event the sink sends, an absolute URI;
|
|
69
|
+
* defaults to the environment URL.
|
|
70
|
+
*/
|
|
59
71
|
readonly source?: string;
|
|
60
72
|
/**
|
|
61
|
-
* Verifies the environment's signed policy document, typically
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
* `
|
|
73
|
+
* Verifies the environment's signed policy document, typically `({ jwks }) =>
|
|
74
|
+
* joseTokenVerifier({ jwks })`. A function is called once, with the resolved
|
|
75
|
+
* endpoints, on the first refresh. Without one, `policies.current()` stays
|
|
76
|
+
* `null`: an unverifiable document is never applied.
|
|
65
77
|
*/
|
|
66
78
|
readonly verifier?: TokenVerifier | ((endpoints: CloudEndpoints) => TokenVerifier);
|
|
67
79
|
};
|
|
68
80
|
/**
|
|
69
81
|
* What `POST /catalog` answers: `201` with the new version and the drift
|
|
70
|
-
* findings against the previous one, or `200` with `unchanged: true` when
|
|
71
|
-
*
|
|
82
|
+
* findings against the previous one, or `200` with `unchanged: true` when the
|
|
83
|
+
* fingerprint is already published.
|
|
72
84
|
*/
|
|
73
85
|
type CloudCatalogPush = {
|
|
74
86
|
readonly version: number;
|
|
@@ -81,19 +93,19 @@ type CloudCatalogPush = {
|
|
|
81
93
|
};
|
|
82
94
|
type CloudCatalog = {
|
|
83
95
|
/**
|
|
84
|
-
* Posts the catalog, its `operations` included, to the environment.
|
|
85
|
-
*
|
|
86
|
-
*
|
|
96
|
+
* Posts the catalog, its `operations` included, to the environment. Throws
|
|
97
|
+
* when the Cloud refuses it or answers another shape. The Cloud shows and
|
|
98
|
+
* diffs it; it never decides with it.
|
|
87
99
|
*/
|
|
88
|
-
push(catalog: CatalogDocument)
|
|
100
|
+
push: (catalog: CatalogDocument) => Promise<CloudCatalogPush>;
|
|
89
101
|
};
|
|
90
102
|
type CloudClient = Partial<CloudEndpoints> & {
|
|
91
103
|
/**
|
|
92
|
-
* The environment URL and JWK Set URL. `issuer` and `jwks` are set only
|
|
93
|
-
*
|
|
94
|
-
*
|
|
104
|
+
* The environment URL and JWK Set URL. `issuer` and `jwks` are set only when
|
|
105
|
+
* the environment is configured; otherwise the first call asks `GET
|
|
106
|
+
* /v1/environment` which environment the key belongs to.
|
|
95
107
|
*/
|
|
96
|
-
endpoints()
|
|
108
|
+
endpoints: () => Promise<CloudEndpoints>;
|
|
97
109
|
readonly approvals: ApprovalStore;
|
|
98
110
|
readonly sink: DecisionSink;
|
|
99
111
|
/**
|
|
@@ -102,7 +114,7 @@ type CloudClient = Partial<CloudEndpoints> & {
|
|
|
102
114
|
* signed. Sent as `PermDock-Subject`; the Cloud never takes a subject from
|
|
103
115
|
* anything else.
|
|
104
116
|
*/
|
|
105
|
-
snapshotsFor(token: string)
|
|
117
|
+
snapshotsFor: (token: string) => SnapshotSource;
|
|
106
118
|
readonly policies: PolicySource;
|
|
107
119
|
readonly catalog: CloudCatalog;
|
|
108
120
|
};
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as ClaimsMap } from "./claims-map-
|
|
3
|
-
import { t as ClientNames } from "./clients-
|
|
1
|
+
import { pr as Principal, rn as AuthEvent } from "./policy-types-DGIO_gxq.js";
|
|
2
|
+
import { t as ClaimsMap } from "./claims-map-D1Pb5oRq.js";
|
|
3
|
+
import { t as ClientNames } from "./clients-C_NOET3z.js";
|
|
4
4
|
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
5
5
|
//#region src/supabase/claims.d.ts
|
|
6
|
-
/**
|
|
6
|
+
/**
|
|
7
|
+
* One entry of the `memberships` claim, as `schemas/supabase-claims-v1.json`
|
|
8
|
+
* defines it.
|
|
9
|
+
*/
|
|
7
10
|
type SupabaseMembershipClaim = {
|
|
8
11
|
readonly scope?: string;
|
|
9
12
|
/** Canonical text of the scope instance id, compared exactly. */
|
|
@@ -28,7 +31,10 @@ type SupabaseMembershipClaim = {
|
|
|
28
31
|
};
|
|
29
32
|
readonly managed_by?: "idp";
|
|
30
33
|
readonly entitlements?: readonly string[];
|
|
31
|
-
/**
|
|
34
|
+
/**
|
|
35
|
+
* The instance or an ancestor is suspended: the permission keys the
|
|
36
|
+
* membership still grants.
|
|
37
|
+
*/
|
|
32
38
|
readonly keep?: readonly string[];
|
|
33
39
|
/** Custom roles in compact form, read by the RLS helpers in `jwt` mode. */
|
|
34
40
|
readonly grants?: Readonly<Record<string, unknown>>;
|
|
@@ -47,9 +53,15 @@ type SupabasePermDockClaims<TenantClaim extends string = "tenant_id"> = {
|
|
|
47
53
|
readonly memberships?: readonly SupabaseMembershipClaim[];
|
|
48
54
|
/** `true` when the size budget cut `memberships` or `attrs`. */
|
|
49
55
|
readonly memberships_truncated?: boolean;
|
|
50
|
-
/**
|
|
56
|
+
/**
|
|
57
|
+
* Allow-listed server-owned attributes, read as
|
|
58
|
+
* `principal.claims.attrs.<key>`.
|
|
59
|
+
*/
|
|
51
60
|
readonly attrs?: Readonly<Record<string, unknown>>;
|
|
52
|
-
/**
|
|
61
|
+
/**
|
|
62
|
+
* The uuid of every team the user belongs to (`supabase.hook.teams`), cut by
|
|
63
|
+
* the same budget as `memberships`.
|
|
64
|
+
*/
|
|
53
65
|
readonly team_ids?: readonly string[];
|
|
54
66
|
/** The principal's authorization version. */
|
|
55
67
|
readonly authz_ver?: number;
|
|
@@ -75,10 +87,13 @@ type SupabaseClaims<TenantClaim extends string = "tenant_id"> = SupabasePermDock
|
|
|
75
87
|
* are combined, and the app's output is merged over the base.
|
|
76
88
|
*/
|
|
77
89
|
type SupabaseClaimsSchema<TenantClaim extends string = "tenant_id", Extra = unknown> = StandardSchemaV1<unknown, SupabaseClaims<TenantClaim> & Extra> & {
|
|
78
|
-
extend<App extends StandardSchemaV1>(app: App)
|
|
90
|
+
extend: <App extends StandardSchemaV1>(app: App) => SupabaseClaimsSchema<TenantClaim, Extra & StandardSchemaV1.InferOutput<App>>;
|
|
79
91
|
};
|
|
80
92
|
type SupabaseClaimsOptions<TenantClaim extends string = "tenant_id"> = {
|
|
81
|
-
/**
|
|
93
|
+
/**
|
|
94
|
+
* The claim holding the active tenant; `rls.tenantClaim`, default
|
|
95
|
+
* `tenant_id`.
|
|
96
|
+
*/
|
|
82
97
|
readonly tenantClaim?: TenantClaim;
|
|
83
98
|
};
|
|
84
99
|
/**
|
|
@@ -88,7 +103,9 @@ type SupabaseClaimsOptions<TenantClaim extends string = "tenant_id"> = {
|
|
|
88
103
|
* Needs no validation library.
|
|
89
104
|
*
|
|
90
105
|
* ```ts
|
|
91
|
-
* sb.claims(
|
|
106
|
+
* sb.claims(
|
|
107
|
+
* supabaseClaims().extend(z.object({ datetime_preferences: Prefs })),
|
|
108
|
+
* );
|
|
92
109
|
* ```
|
|
93
110
|
*/
|
|
94
111
|
declare function supabaseClaims<TenantClaim extends string = "tenant_id">(options?: SupabaseClaimsOptions<TenantClaim>): SupabaseClaimsSchema<TenantClaim>;
|
|
@@ -102,14 +119,17 @@ type SupabasePrincipal = Principal & {
|
|
|
102
119
|
};
|
|
103
120
|
type SupabaseInclude = "email" | "phone" | "is_anonymous";
|
|
104
121
|
/**
|
|
105
|
-
* A column that holds a foreign key: the value is `column` of `through`,
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
*
|
|
109
|
-
*
|
|
122
|
+
* A column that holds a foreign key: the value is `column` of `through`, joined
|
|
123
|
+
* on `on`. A role reads its key from a roles table (`{ through: 'roles', on: {
|
|
124
|
+
* role_id: 'id' }, column: 'key' }`); a membership source's user can read its
|
|
125
|
+
* user id from a profile table (`{ through: 'contact_profiles', on: {
|
|
126
|
+
* contact_profile_id: 'id' }, column: 'user_id' }`).
|
|
110
127
|
*/
|
|
111
128
|
type RoleThrough = {
|
|
112
|
-
/**
|
|
129
|
+
/**
|
|
130
|
+
* The referenced table; unqualified, it is in the schema of the table that
|
|
131
|
+
* references it.
|
|
132
|
+
*/
|
|
113
133
|
readonly through: string;
|
|
114
134
|
/** One entry: the referencing column to the column of `through` it references. */
|
|
115
135
|
readonly on: Readonly<Record<string, string>>;
|
|
@@ -118,8 +138,8 @@ type RoleThrough = {
|
|
|
118
138
|
};
|
|
119
139
|
/**
|
|
120
140
|
* A role column whose values are not role keys: each value maps to a role key,
|
|
121
|
-
* or to `null` for no role, and an unlisted value is no role
|
|
122
|
-
*
|
|
141
|
+
* or to `null` for no role, and an unlisted value is no role (`{ column:
|
|
142
|
+
* 'kind', map: { admin: 'owner', user: null } }`).
|
|
123
143
|
*/
|
|
124
144
|
type RoleMap = {
|
|
125
145
|
readonly column: string;
|
|
@@ -133,7 +153,10 @@ type SupabaseMembershipTable = {
|
|
|
133
153
|
* several of them: the row holds every non-null key.
|
|
134
154
|
*/
|
|
135
155
|
readonly role: string | RoleThrough | RoleMap | readonly (string | RoleThrough | RoleMap)[];
|
|
136
|
-
/**
|
|
156
|
+
/**
|
|
157
|
+
* Per scope name, the column holding that scope's id: the table's own scope
|
|
158
|
+
* and its ancestors.
|
|
159
|
+
*/
|
|
137
160
|
readonly columns?: Readonly<Record<string, string>>;
|
|
138
161
|
readonly tenant?: string;
|
|
139
162
|
readonly team?: string;
|
|
@@ -141,7 +164,10 @@ type SupabaseMembershipTable = {
|
|
|
141
164
|
readonly expiresAt?: string;
|
|
142
165
|
readonly disabledAt?: string;
|
|
143
166
|
};
|
|
144
|
-
/**
|
|
167
|
+
/**
|
|
168
|
+
* A table whose row says whether a user or a scope instance is active. A
|
|
169
|
+
* missing row counts as suspended.
|
|
170
|
+
*/
|
|
145
171
|
type SupabaseActiveRow = {
|
|
146
172
|
readonly table: string;
|
|
147
173
|
/** Column holding the user id or the scope instance id. */
|
|
@@ -152,12 +178,15 @@ type SupabaseActiveRow = {
|
|
|
152
178
|
readonly status?: string;
|
|
153
179
|
readonly active?: readonly string[];
|
|
154
180
|
};
|
|
155
|
-
/**
|
|
181
|
+
/**
|
|
182
|
+
* A scope's active-row table, with the permissions its suspended instances
|
|
183
|
+
* keep.
|
|
184
|
+
*/
|
|
156
185
|
type SupabaseSuspendedScope = SupabaseActiveRow & {
|
|
157
186
|
/**
|
|
158
187
|
* Permissions (references or keys) members of a suspended instance, and of
|
|
159
|
-
* every instance nested in it, still hold; such a membership carries them
|
|
160
|
-
*
|
|
188
|
+
* every instance nested in it, still hold; such a membership carries them as
|
|
189
|
+
* `keep`.
|
|
161
190
|
*/
|
|
162
191
|
readonly keep?: readonly (string | {
|
|
163
192
|
readonly key: string;
|
|
@@ -171,7 +200,10 @@ type SupabaseSuspendedMembership = {
|
|
|
171
200
|
type SupabaseSuspension = {
|
|
172
201
|
/** A suspended user holds no role and no membership. */
|
|
173
202
|
readonly users?: SupabaseActiveRow;
|
|
174
|
-
/**
|
|
203
|
+
/**
|
|
204
|
+
* Per scope name: a suspended instance voids its memberships and every
|
|
205
|
+
* membership nested under it, except for `keep`.
|
|
206
|
+
*/
|
|
175
207
|
readonly scopes?: Readonly<Record<string, SupabaseSuspendedScope>>;
|
|
176
208
|
readonly memberships?: SupabaseSuspendedMembership;
|
|
177
209
|
};
|
|
@@ -183,25 +215,42 @@ type SupabaseMemberships = {
|
|
|
183
215
|
readonly resource?: Readonly<Record<string, SupabaseMembershipTable>>;
|
|
184
216
|
};
|
|
185
217
|
type AuthorizeSqlOptions = {
|
|
186
|
-
/**
|
|
218
|
+
/**
|
|
219
|
+
* Postgres schema of `authorize`, `user_roles`, `role_permissions` and
|
|
220
|
+
* `app_permission`. Default `permdock`.
|
|
221
|
+
*/
|
|
187
222
|
readonly schema?: string;
|
|
188
|
-
/**
|
|
223
|
+
/**
|
|
224
|
+
* `database` (default) reads the tables on every call; `jwt` reads the
|
|
225
|
+
* hook-injected claims.
|
|
226
|
+
*/
|
|
189
227
|
readonly authorize?: "database" | "jwt";
|
|
190
|
-
/**
|
|
228
|
+
/**
|
|
229
|
+
* The policy's first scope, which `requested_tenant` is an instance of.
|
|
230
|
+
* Default `tenant`.
|
|
231
|
+
*/
|
|
191
232
|
readonly scope?: string;
|
|
192
|
-
/**
|
|
233
|
+
/**
|
|
234
|
+
* Membership table for tenant requests in `database` mode; without one they
|
|
235
|
+
* deny.
|
|
236
|
+
*/
|
|
193
237
|
readonly tenant?: boolean | SupabaseMembershipTable;
|
|
194
238
|
/**
|
|
195
|
-
* Tenant requests also answer from custom roles, through the
|
|
196
|
-
* `permdock rls generate --custom-roles`
|
|
197
|
-
* the `
|
|
239
|
+
* Tenant requests also answer from custom roles, through the
|
|
240
|
+
* `permdock_custom_keys` function `permdock rls generate --custom-roles`
|
|
241
|
+
* emits: the `custom_role_*` tables in `database` mode, the
|
|
242
|
+
* `memberships[].grants` claim in `jwt` mode. `declared` role names never
|
|
243
|
+
* resolve as custom.
|
|
198
244
|
*/
|
|
199
245
|
readonly customRoles?: {
|
|
200
246
|
readonly declared: readonly string[];
|
|
201
247
|
/** Stored allows may carry a level (`custom_role_permissions.level`). */
|
|
202
248
|
readonly levels?: true;
|
|
203
249
|
};
|
|
204
|
-
/**
|
|
250
|
+
/**
|
|
251
|
+
* A suspended user, or a suspended instance of `scope` for a tenant request,
|
|
252
|
+
* answers `false`.
|
|
253
|
+
*/
|
|
205
254
|
readonly suspension?: SupabaseSuspension;
|
|
206
255
|
};
|
|
207
256
|
/** A permission reference; `rls generate` reads only its `key`. */
|
|
@@ -220,7 +269,10 @@ type SupabaseRealtime = {
|
|
|
220
269
|
readonly write?: SupabasePermissionRef;
|
|
221
270
|
}>>;
|
|
222
271
|
};
|
|
223
|
-
/**
|
|
272
|
+
/**
|
|
273
|
+
* Storage buckets whose object paths hold a scope instance id in folder
|
|
274
|
+
* `folder` (default 1).
|
|
275
|
+
*/
|
|
224
276
|
type SupabaseStorage = {
|
|
225
277
|
readonly buckets: Readonly<Record<string, {
|
|
226
278
|
readonly scope: string;
|
|
@@ -233,26 +285,39 @@ type SupabaseStorage = {
|
|
|
233
285
|
type SupabaseRlsOptions = {
|
|
234
286
|
readonly roleClaim?: string;
|
|
235
287
|
readonly tenantClaim?: string;
|
|
236
|
-
/**
|
|
288
|
+
/**
|
|
289
|
+
* Postgres type of tenant columns; the tenant claim is cast to it. `rls
|
|
290
|
+
* generate` defaults to `uuid`.
|
|
291
|
+
*/
|
|
237
292
|
readonly tenantType?: string;
|
|
238
293
|
readonly memberships?: SupabaseMembershipTable | SupabaseMemberships;
|
|
239
294
|
readonly suspension?: SupabaseSuspension;
|
|
240
295
|
readonly realtime?: SupabaseRealtime;
|
|
241
296
|
readonly storage?: SupabaseStorage;
|
|
242
297
|
};
|
|
298
|
+
/**
|
|
299
|
+
* A membership table as `permdock.config.ts` names it: scope columns in
|
|
300
|
+
* `columns`.
|
|
301
|
+
*/
|
|
302
|
+
type SupabaseRlsMembershipTable = Omit<SupabaseMembershipTable, "tenant" | "team">;
|
|
243
303
|
type SupabaseRlsConfig = {
|
|
244
304
|
readonly dialect: "supabase";
|
|
245
305
|
readonly roleClaim: string;
|
|
246
306
|
readonly tenantClaim: string;
|
|
247
|
-
|
|
248
|
-
readonly
|
|
307
|
+
/** `tenantType` as the type of the first scope, under its `tenant` alias. */
|
|
308
|
+
readonly scopeTypes?: Readonly<Record<string, string>>;
|
|
309
|
+
readonly memberships?: {
|
|
310
|
+
readonly scopes?: Readonly<Record<string, SupabaseRlsMembershipTable>>;
|
|
311
|
+
readonly resource?: Readonly<Record<string, SupabaseRlsMembershipTable>>;
|
|
312
|
+
};
|
|
249
313
|
readonly suspension?: SupabaseSuspension;
|
|
250
314
|
readonly realtime?: SupabaseRealtime;
|
|
251
315
|
readonly storage?: SupabaseStorage;
|
|
252
316
|
};
|
|
253
317
|
/**
|
|
254
|
-
* The structural shape `subjectFromSupabaseSession` reads: a discriminant and
|
|
255
|
-
* Matches any session object of that shape without
|
|
318
|
+
* The structural shape `subjectFromSupabaseSession` reads: a discriminant and
|
|
319
|
+
* the verified JWT claims. Matches any session object of that shape without
|
|
320
|
+
* importing its library.
|
|
256
321
|
*/
|
|
257
322
|
type SupabaseSessionLike = {
|
|
258
323
|
readonly kind: string;
|
|
@@ -270,25 +335,38 @@ type SupabaseSubjectOptions = {
|
|
|
270
335
|
readonly schema?: StandardSchemaV1;
|
|
271
336
|
readonly include?: readonly SupabaseInclude[];
|
|
272
337
|
readonly declared?: readonly string[];
|
|
273
|
-
/**
|
|
338
|
+
/**
|
|
339
|
+
* Names for OAuth client ids: an `oauth-client` actor gets `client` set to
|
|
340
|
+
* the name of its id, which a policy delegation matches with `to: { kind:
|
|
341
|
+
* 'oauth-client', client }`.
|
|
342
|
+
*/
|
|
274
343
|
readonly clients?: ClientNames;
|
|
275
|
-
/**
|
|
344
|
+
/**
|
|
345
|
+
* `'deny'` maps a token with `is_anonymous: true` (`signInAnonymously()`) to
|
|
346
|
+
* the anonymous subject, as `rls.anonymousSignIns: 'deny'` does in RLS.
|
|
347
|
+
*/
|
|
276
348
|
readonly anonymousSignIns?: "deny";
|
|
277
349
|
/**
|
|
278
|
-
* `true` once the caller checked the session against the Auth server for this
|
|
279
|
-
* (`auth.getUser()` or an equivalent session check): a token with a
|
|
280
|
-
* `subject.liveSession`, which `{ subject: { session: {
|
|
350
|
+
* `true` once the caller checked the session against the Auth server for this
|
|
351
|
+
* request (`auth.getUser()` or an equivalent session check): a token with a
|
|
352
|
+
* `session_id` gets `subject.liveSession`, which `{ subject: { session: {
|
|
353
|
+
* live: true } } }` requires. Never read from claims.
|
|
281
354
|
*/
|
|
282
355
|
readonly liveSession?: boolean;
|
|
283
|
-
/**
|
|
356
|
+
/**
|
|
357
|
+
* Audit hook: `membership-dropped` for a `memberships` entry that could not
|
|
358
|
+
* be read, `invalid-chain` for a malformed `act`.
|
|
359
|
+
*/
|
|
284
360
|
readonly onAuth?: (event: AuthEvent) => void;
|
|
285
361
|
};
|
|
286
362
|
/**
|
|
287
|
-
* Who acts for the user. `oauth-client`: a third-party app or an agent chain
|
|
288
|
-
* `act` without `kind`). `support`: a support session
|
|
289
|
-
*
|
|
290
|
-
*
|
|
291
|
-
*
|
|
363
|
+
* Who acts for the user. `oauth-client`: a third-party app or an agent chain
|
|
364
|
+
* (`client_id`, or an `act` without `kind`). `support`: a support session
|
|
365
|
+
* (`act.kind: "support"` with `session_id`). `impersonation`: an admin acting
|
|
366
|
+
* as the user (`act.kind: "impersonation"`). `agent`: an agent run
|
|
367
|
+
* better-supabase's `agentClaims` minted (`act.kind: "agent"`), with the
|
|
368
|
+
* `tools` it may call. `chain` is a copy of the token's `act` claim when it has
|
|
369
|
+
* one.
|
|
292
370
|
*/
|
|
293
371
|
type SupabaseActor = {
|
|
294
372
|
readonly id: string;
|
|
@@ -326,4 +404,4 @@ type SupabaseDelegation = {
|
|
|
326
404
|
readonly scopes: readonly string[];
|
|
327
405
|
};
|
|
328
406
|
//#endregion
|
|
329
|
-
export {
|
|
407
|
+
export { SupabaseClaims as C, SupabasePermDockClaims as D, SupabaseMembershipClaim as E, supabaseClaims as O, SupabaseActClaim as S, SupabaseClaimsSchema as T, SupabaseStorage as _, SupabaseActor as a, SupabaseSuspendedScope as b, SupabaseInclude as c, SupabasePrincipal as d, SupabaseRealtime as f, SupabaseSessionLike as g, SupabaseRlsOptions as h, SupabaseActiveRow as i, SupabaseMembershipTable as l, SupabaseRlsMembershipTable as m, RoleMap as n, SupabaseActorResult as o, SupabaseRlsConfig as p, RoleThrough as r, SupabaseDelegation as s, AuthorizeSqlOptions as t, SupabasePermissionRef as u, SupabaseSubjectOptions as v, SupabaseClaimsOptions as w, SupabaseSuspension as x, SupabaseSuspendedMembership as y };
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { u as Permission } from "./permission-types-
|
|
3
|
-
import { a as PermDock } from "./permdock-
|
|
4
|
-
import { t as PermissionBoundaryState } from "./boundary-
|
|
5
|
-
import {
|
|
1
|
+
import { Hn as ApprovalRequiredDecision, Un as Decision, Yn as GrantedDecision, Zt as Snapshot, ht as TokenVerifier } from "./policy-types-DGIO_gxq.js";
|
|
2
|
+
import { u as Permission } from "./permission-types-CAY-GU7e.js";
|
|
3
|
+
import { a as PermDock } from "./permdock-CprAPN3w.js";
|
|
4
|
+
import { t as PermissionBoundaryState } from "./boundary-C9ck-3uK.js";
|
|
5
|
+
import { t as ActionResult } from "./action-result-BcudBQOF.js";
|
|
6
|
+
import { d as ProtectedActionView, f as ProviderOptionsBase, g as ClientStore, l as PermissionState } from "./types-tQB2CEnY.js";
|
|
6
7
|
import { Snippet } from "svelte";
|
|
7
8
|
import { Readable } from "svelte/store";
|
|
8
9
|
//#region src/client/views.d.ts
|
|
9
10
|
/**
|
|
10
11
|
* What `Protected` renders: `pending` while an endpoint answer is in flight,
|
|
11
|
-
* `approval` for an approval-required decision, `denied` for any other
|
|
12
|
-
* denial.
|
|
12
|
+
* `approval` for an approval-required decision, `denied` for any other denial.
|
|
13
13
|
*/
|
|
14
14
|
type ProtectedView = (PermissionState & {
|
|
15
15
|
readonly slot: "pending" | "denied";
|
|
@@ -59,21 +59,30 @@ type ProtectedProps = {
|
|
|
59
59
|
/** Rendered for an approval-required decision; defaults to `denied`. */
|
|
60
60
|
readonly approval?: Snippet<[ApprovalRequiredDecision]>;
|
|
61
61
|
};
|
|
62
|
-
/**
|
|
62
|
+
/**
|
|
63
|
+
* The instance for `tenant`, built once per store change rather than once per
|
|
64
|
+
* check.
|
|
65
|
+
*/
|
|
63
66
|
declare function scopedFor(store: ClientStore, tenant: string | undefined, _generation?: number): PermDock | undefined;
|
|
64
67
|
declare function viewFor(store: ClientStore, reference: Permission, data: unknown, scoped: PermDock | undefined, _generation?: number): ProtectedView;
|
|
65
68
|
//#endregion
|
|
66
69
|
//#region src/svelte/types.d.ts
|
|
67
70
|
type SveltePermDockOptions = ProviderOptionsBase & {
|
|
68
71
|
/**
|
|
69
|
-
* A getter (`() => data.snapshot`) or a readable store re-hydrates the
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
+
* A getter (`() => data.snapshot`) or a readable store re-hydrates the store
|
|
73
|
+
* when it changes; a promise keeps the store `pending` until it settles
|
|
74
|
+
* (render the same promise with `{#await}`).
|
|
72
75
|
*/
|
|
73
76
|
readonly snapshot: Snapshot | string | (() => Snapshot | string) | Readable<Snapshot | string> | PromiseLike<Snapshot | string>;
|
|
74
|
-
/**
|
|
77
|
+
/**
|
|
78
|
+
* A getter (`() => page.params.org`) switches the active tenant (`refresh({
|
|
79
|
+
* tenant })`) when it changes.
|
|
80
|
+
*/
|
|
75
81
|
readonly tenant?: string | (() => string | undefined);
|
|
76
|
-
/**
|
|
82
|
+
/**
|
|
83
|
+
* A getter is read on every request, so a rotated token applies without a new
|
|
84
|
+
* store.
|
|
85
|
+
*/
|
|
77
86
|
readonly headers?: Readonly<Record<string, string>> | (() => Readonly<Record<string, string>> | undefined);
|
|
78
87
|
readonly verifier?: TokenVerifier;
|
|
79
88
|
/** What every `<Protected>` renders for a snippet it leaves out. */
|
|
@@ -85,5 +94,13 @@ type PermDockDefaults = {
|
|
|
85
94
|
readonly denied?: Snippet<[Decision]>;
|
|
86
95
|
readonly approval?: Snippet<[ApprovalRequiredDecision]>;
|
|
87
96
|
};
|
|
97
|
+
/**
|
|
98
|
+
* `protectedAction` in Svelte: a readable store of the view, with `run` and
|
|
99
|
+
* `retry`.
|
|
100
|
+
*/
|
|
101
|
+
type ProtectedActionReadable<T> = Readable<ProtectedActionView<T>> & {
|
|
102
|
+
readonly run: (input: unknown) => Promise<ActionResult<T>>;
|
|
103
|
+
readonly retry: () => Promise<ActionResult<T> | undefined>;
|
|
104
|
+
};
|
|
88
105
|
//#endregion
|
|
89
|
-
export {
|
|
106
|
+
export { scopedFor as a, slotContent as c, ProtectedProps as i, ProtectedActionReadable as n, viewFor as o, SveltePermDockOptions as r, PermissionBoundaryProps as s, PermDockDefaults as t };
|