export { top } from "./top.js"; export { Store }; export const space: import("@ucanto/interface").TheCapabilityParser, any>>; /** * `space/info` can be derived from any of the `store/*` or `upload/*` * capability that has matching `with`. This allows store service * to identify account based on any user request. */ export const info: import("@ucanto/interface").TheCapabilityParser, {}>, import("@ucanto/interface").CapabilityMatch<"store/remove", `did:key:${string}` & `did:${string}` & import("multiformats").Phantom<{ protocol: "did:"; }>, Store.Schema.InferStruct<{ link: Store.Schema.Schema, any>; }>> | import("@ucanto/interface").CapabilityMatch<"store/list", `did:key:${string}` & `did:${string}` & import("multiformats").Phantom<{ protocol: "did:"; }>, Store.Schema.InferStruct<{ cursor: Store.Schema.Schema; size: Store.Schema.Schema<(number & import("multiformats").Phantom<{ typeof: "integer"; }>) | undefined, unknown>; pre: Store.Schema.Schema; }>> | import("@ucanto/interface").CapabilityMatch<"upload/add", `did:key:${string}` & `did:${string}` & import("multiformats").Phantom<{ protocol: "did:"; }>, Store.Schema.InferStruct<{ root: typeof Store.Schema.Link; shards: Store.Schema.Schema, number, 1>[] | undefined, any>; }>> | import("@ucanto/interface").CapabilityMatch<"upload/remove", `did:key:${string}` & `did:${string}` & import("multiformats").Phantom<{ protocol: "did:"; }>, Store.Schema.InferStruct<{ root: typeof Store.Schema.Link; }>> | import("@ucanto/interface").CapabilityMatch<"upload/list", `did:key:${string}` & `did:${string}` & import("multiformats").Phantom<{ protocol: "did:"; }>, Store.Schema.InferStruct<{ cursor: Store.Schema.Schema; size: Store.Schema.Schema<(number & import("multiformats").Phantom<{ typeof: "integer"; }>) | undefined, unknown>; pre: Store.Schema.Schema; }>>>>; export const allocate: import("@ucanto/interface").TheCapabilityParser, Store.Schema.InferStruct<{ size: Store.Schema.NumberSchema, unknown>; }>>>; /** * The capability grants permission for all content serve operations that fall under the "space/content/serve" namespace. * It can be derived from any of the `space/*` capability that has matching `with`. */ export const contentServe: import("@ucanto/interface").TheCapabilityParser, any>>; /** * Capability can be invoked by an agent to record egress data for a given resource. * It can be derived from any of the `space/content/serve/*` capability that has matching `with`. */ export const egressRecord: import("@ucanto/interface").TheCapabilityParser, Store.Schema.InferStruct<{ resource: Store.Schema.Schema, any>; bytes: Store.Schema.NumberSchema, unknown>; servedAt: Store.Schema.NumberSchema, unknown>; }>>>; /** * The capability grants permission to decrypt a given resource. * It can be derived from `space/content/decrypt` capability that has matching `with` and `nb.resource`. */ export const decrypt: import("@ucanto/interface").TheCapabilityParser, Store.Schema.InferStruct<{ resource: Store.Schema.Schema, any>; }>>>; /** * "Setup encryption for a Space using asymmetric keys in KMS." * * A Principal who may `space/encryption/setup` is permitted to initialize * encryption for a Space. This generates an RSA key pair in Google KMS * for the Space and returns the public key that clients can use to encrypt * per-file symmetric keys. * * This operation is idempotent - invoking it the first time generates the * asymmetric key for the space, but future invocations just return the * existing public key. * * The Space must be provisioned for a paid plan to use encryption. */ export const EncryptionSetup: import("@ucanto/interface").TheCapabilityParser, Store.Schema.InferStruct<{ location: Store.Schema.Schema; keyring: Store.Schema.Schema; }>>>; /** * "Decrypt symmetric keys for encrypted content owned by the subject Space." * * A Principal who may `space/encryption/key/decrypt` is permitted to decrypt * the symmetric keys for any encrypted content owned by the Space. This capability * is used by the gateway to validate that a client has permission to access encrypted * content and receive the decrypted Data Encryption Keys (DEKs). * * The gateway will validate this capability against UCAN delegations before * providing decrypted Data Encryption Keys (DEKs) to authorized clients. */ export const EncryptionKeyDecrypt: import("@ucanto/interface").TheCapabilityParser, Store.Schema.InferStruct<{ key: Store.Schema.Schema, unknown>; }>>>; import * as Store from './store.js'; //# sourceMappingURL=space.d.ts.map