Skip to main content
This release is a pre-release — the latest non-prerelease version of @fedify/botkit is 0.1.1. Jump to this version

@fedify/botkit@0.2.0-dev.77+d1f283de
Built and signed on GitHub Actions

A framework for creating ActivityPub bots

This package works with Deno
This package works with Deno
JSR Score
88%
Published
4 weeks ago (0.2.0-dev.77+d1f283de)
class KvRepository
implements Repository

A repository for storing bot data using a key-value store.

Constructors

new
KvRepository(
kv: KvStore,
prefixes?: KvStoreRepositoryPrefixes,
)

Creates a new key-value store repository.

Properties

readonly
kv: KvStore
readonly
prefixes: KvStoreRepositoryPrefixes

Methods

addFollowee(
followeeId: URL,
follow: Follow,
): Promise<void>
addFollower(
followRequestId: URL,
follower: Actor,
): Promise<void>
addMessage(
id: Uuid,
activity: Create | Announce,
): Promise<void>
addSentFollow(
id: Uuid,
follow: Follow,
): Promise<void>
getFollowee(followeeId: URL): Promise<Follow | undefined>
getFollowers(options?: RepositoryGetFollowersOptions): AsyncIterable<Actor>
getMessage(id: Uuid): Promise<
Create
| Announce
| undefined
>
getMessages(options?: RepositoryGetMessagesOptions): AsyncIterable<Create | Announce>
getSentFollow(id: Uuid): Promise<Follow | undefined>
removeFollowee(followeeId: URL): Promise<Follow | undefined>
removeFollower(
followRequestId: URL,
actorId: URL,
): Promise<Actor | undefined>
removeMessage(id: Uuid): Promise<
Create
| Announce
| undefined
>
removeSentFollow(id: Uuid): Promise<Follow | undefined>
setKeyPairs(keyPairs: CryptoKeyPair[]): Promise<void>
updateMessage(
id: Uuid,
updater: (existing: Create | Announce) =>
Create
| Announce
| undefined
| Promise<
Create
| Announce
| undefined
>
,
): Promise<boolean>

Add Package

deno add jsr:@fedify/botkit

Import symbol

import { KvRepository } from "@fedify/botkit";

---- OR ----

Import directly with a jsr specifier

import { KvRepository } from "jsr:@fedify/botkit";