import type StreamID from '@ceramicnetwork/streamid'; import type { Definition, DefinitionName, SchemaName, PublishedDefinitions, PublishedSchemas } from '@ceramicstudio/idx-constants'; import type { DagJWSResult, JWSSignature } from 'dids'; export type { Definition } from '@ceramicstudio/idx-constants'; export declare type Schema = Record; export interface EncodedDagJWS { payload: string; signatures: Array; link?: string; } export interface EncodedDagJWSResult { jws: EncodedDagJWS; linkedBlock: string; } declare type SignedRecord = Record>; export declare type SignedDefinitions = SignedRecord; export declare type SignedSchemas = SignedRecord; export interface PublishedConfig { definitions: PublishedDefinitions; schemas: PublishedSchemas; } export interface PublishDoc { id?: StreamID | string; content: T; controllers?: Array; schema?: StreamID | string; } export interface DefinitionDoc extends PublishDoc { id: StreamID | string; } export interface SchemaDoc extends PublishDoc { name: string; }