@atproto/repo
Version:
atproto repo and MST implementation
421 lines • 14 kB
TypeScript
import { z } from 'zod';
import { Cid, LexMap } from '@atproto/lex-data';
import { NsidString, RecordKeyString } from '@atproto/syntax';
import { BlockMap } from './block-map.js';
import { CidSet } from './cid-set.js';
declare const _unsignedCommit: z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<3>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodString;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 3;
data: Cid<0 | 1, number, number>;
rev: string;
prev: Cid<0 | 1, number, number> | null;
}, {
did: string;
version: 3;
rev: string;
data?: unknown;
prev?: unknown;
}>;
export type UnsignedCommit = z.infer<typeof _unsignedCommit> & {
sig?: never;
};
declare const commit: z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<3>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodString;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 3;
data: Cid<0 | 1, number, number>;
rev: string;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
}, {
did: string;
version: 3;
rev: string;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
prev?: unknown;
}>;
export type Commit = z.infer<typeof commit>;
declare const legacyV2Commit: z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<2>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodOptional<z.ZodString>;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 2;
data: Cid<0 | 1, number, number>;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
rev?: string | undefined;
}, {
did: string;
version: 2;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
rev?: string | undefined;
prev?: unknown;
}>;
export type LegacyV2Commit = z.infer<typeof legacyV2Commit>;
declare const versionedCommit: z.ZodDiscriminatedUnion<"version", [z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<3>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodString;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 3;
data: Cid<0 | 1, number, number>;
rev: string;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
}, {
did: string;
version: 3;
rev: string;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
prev?: unknown;
}>, z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<2>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodOptional<z.ZodString>;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 2;
data: Cid<0 | 1, number, number>;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
rev?: string | undefined;
}, {
did: string;
version: 2;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
rev?: string | undefined;
prev?: unknown;
}>]>;
export type VersionedCommit = z.infer<typeof versionedCommit>;
export declare const schema: {
cid: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
carHeader: z.ZodObject<{
version: z.ZodLiteral<1>;
roots: z.ZodArray<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>, "many">;
}, "strip", z.ZodTypeAny, {
version: 1;
roots: Cid<0 | 1, number, number>[];
}, {
version: 1;
roots: unknown[];
}>;
bytes: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
string: z.ZodString;
array: z.ZodArray<z.ZodUnknown, "many">;
map: z.ZodRecord<z.ZodString, z.ZodUnknown>;
unknown: z.ZodUnknown;
commit: z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<3>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodString;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 3;
data: Cid<0 | 1, number, number>;
rev: string;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
}, {
did: string;
version: 3;
rev: string;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
prev?: unknown;
}>;
legacyV2Commit: z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<2>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodOptional<z.ZodString>;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 2;
data: Cid<0 | 1, number, number>;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
rev?: string | undefined;
}, {
did: string;
version: 2;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
rev?: string | undefined;
prev?: unknown;
}>;
versionedCommit: z.ZodDiscriminatedUnion<"version", [z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<3>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodString;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 3;
data: Cid<0 | 1, number, number>;
rev: string;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
}, {
did: string;
version: 3;
rev: string;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
prev?: unknown;
}>, z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<2>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodOptional<z.ZodString>;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 2;
data: Cid<0 | 1, number, number>;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
rev?: string | undefined;
}, {
did: string;
version: 2;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
rev?: string | undefined;
prev?: unknown;
}>]>;
};
export declare const def: {
cid: {
name: string;
schema: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
};
carHeader: {
name: string;
schema: z.ZodObject<{
version: z.ZodLiteral<1>;
roots: z.ZodArray<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>, "many">;
}, "strip", z.ZodTypeAny, {
version: 1;
roots: Cid<0 | 1, number, number>[];
}, {
version: 1;
roots: unknown[];
}>;
};
bytes: {
name: string;
schema: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
};
string: {
name: string;
schema: z.ZodString;
};
map: {
name: string;
schema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
};
unknown: {
name: string;
schema: z.ZodUnknown;
};
commit: {
name: string;
schema: z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<3>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodString;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 3;
data: Cid<0 | 1, number, number>;
rev: string;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
}, {
did: string;
version: 3;
rev: string;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
prev?: unknown;
}>;
};
versionedCommit: {
name: string;
schema: z.ZodDiscriminatedUnion<"version", [z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<3>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodString;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 3;
data: Cid<0 | 1, number, number>;
rev: string;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
}, {
did: string;
version: 3;
rev: string;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
prev?: unknown;
}>, z.ZodObject<{
did: z.ZodString;
version: z.ZodLiteral<2>;
data: z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>;
rev: z.ZodOptional<z.ZodString>;
prev: z.ZodNullable<z.ZodEffects<z.ZodUnknown, Cid<0 | 1, number, number>, unknown>>;
sig: z.ZodType<Uint8Array<ArrayBufferLike>, z.ZodTypeDef, Uint8Array<ArrayBufferLike>>;
}, "strip", z.ZodTypeAny, {
did: string;
version: 2;
data: Cid<0 | 1, number, number>;
prev: Cid<0 | 1, number, number> | null;
sig: Uint8Array<ArrayBufferLike>;
rev?: string | undefined;
}, {
did: string;
version: 2;
sig: Uint8Array<ArrayBufferLike>;
data?: unknown;
rev?: string | undefined;
prev?: unknown;
}>]>;
};
};
export declare enum WriteOpAction {
Create = "create",
Update = "update",
Delete = "delete"
}
export type RecordCreateOp = {
action: WriteOpAction.Create;
collection: NsidString;
rkey: RecordKeyString;
record: LexMap;
};
export type RecordUpdateOp = {
action: WriteOpAction.Update;
collection: NsidString;
rkey: RecordKeyString;
record: LexMap;
};
export type RecordDeleteOp = {
action: WriteOpAction.Delete;
collection: NsidString;
rkey: RecordKeyString;
};
export type RecordWriteOp = RecordCreateOp | RecordUpdateOp | RecordDeleteOp;
export type RecordCreateDescript = {
action: WriteOpAction.Create;
collection: NsidString;
rkey: RecordKeyString;
cid: Cid;
};
export type RecordUpdateDescript = {
action: WriteOpAction.Update;
collection: NsidString;
rkey: RecordKeyString;
prev: Cid;
cid: Cid;
};
export type RecordDeleteDescript = {
action: WriteOpAction.Delete;
collection: NsidString;
rkey: RecordKeyString;
cid: Cid;
};
export type RecordWriteDescript = RecordCreateDescript | RecordUpdateDescript | RecordDeleteDescript;
export type WriteLog = RecordWriteDescript[][];
export type CommitData = {
cid: Cid;
rev: string;
since: string | null;
prev: Cid | null;
newBlocks: BlockMap;
relevantBlocks: BlockMap;
removedCids: CidSet;
};
export type RepoUpdate = CommitData & {
ops: RecordWriteOp[];
};
export type CollectionContents = Record<string, LexMap>;
export type RepoContents = Record<NsidString, CollectionContents>;
export type RepoRecordWithCid = {
cid: Cid;
value: LexMap;
};
export type CollectionContentsWithCids = Record<string, RepoRecordWithCid>;
export type RepoContentsWithCids = Record<string, CollectionContentsWithCids>;
export type DatastoreContents = Record<string, Cid>;
export type RecordPath = {
collection: string;
rkey: string;
};
export type RecordCidClaim = {
collection: string;
rkey: string;
cid: Cid | null;
};
export type RecordClaim = {
collection: string;
rkey: string;
record: LexMap | null;
};
export type VerifiedDiff = {
writes: RecordWriteDescript[];
commit: CommitData;
};
export type VerifiedRepo = {
creates: RecordCreateDescript[];
commit: CommitData;
};
export type CarBlock = {
cid: Cid;
bytes: Uint8Array;
};
export {};
//# sourceMappingURL=types.d.ts.map