//#region src/stream/message-metadata-tracker.d.ts
/**
 * Metadata tracked per message id. Surfaced to applications via
 * `useMessageMetadata(stream, messageId)`.
 */
interface MessageMetadata {
  /**
   * Checkpoint id the message's *parent* was at when this message was
   * observed. Drives fork / edit flows
   * (`submit(input, { forkFrom: { checkpointId } })`).
   *
   * `undefined` when the message was observed without a paired
   * checkpoint envelope (e.g. before checkpoints rolled out, or when
   * the caller stripped them upstream).
   */
  readonly parentCheckpointId: string | undefined;
}
/**
 * Read-only map exposed via {@link MessageMetadataTracker.store}.
 */
type MessageMetadataMap = ReadonlyMap<string, MessageMetadata>;
//#endregion
export { MessageMetadata, MessageMetadataMap };
//# sourceMappingURL=message-metadata-tracker.d.cts.map