/**
 * Represents version information for a document
 */
export declare class DocumentVersionInfo {
    private readonly _version;
    private readonly _lastModified;
    private readonly _modifiedBy;
    private readonly _updateReason?;
    /**
     * Creates a new document version info
     * @param params Version info parameters
     */
    constructor({ version, lastModified, modifiedBy, updateReason, }: {
        version: number;
        lastModified?: Date;
        modifiedBy?: string;
        updateReason?: string;
    });
    /**
     * Get the document version
     */
    get version(): number;
    /**
     * Get the last modified date
     */
    get lastModified(): Date;
    /**
     * Get who modified the document
     */
    get modifiedBy(): string;
    /**
     * Get the reason for the update
     */
    get updateReason(): string | undefined;
    /**
     * Creates a new version info with incremented version
     * @param updateReason Optional update reason
     * @returns New version info
     */
    nextVersion(updateReason?: string): DocumentVersionInfo;
    /**
     * Converts version info to a plain object
     * @returns Plain object representation
     */
    toObject(): Record<string, unknown>;
}
//# sourceMappingURL=DocumentVersionInfo.d.ts.map