import Component from './component';
import State from './state';
export declare type Hash = string;
export declare type Author = {
    name: string;
    email: string;
};
export default class Snap {
    readonly timestamp: Date;
    readonly parents: Snap[];
    readonly author: Author;
    readonly message: string;
    readonly state: State;
    constructor(timestamp: Date, parents: Snap[], author: Author, message: string, state: State);
    get hash(): string;
    static create(component: Component, author: Author, message?: string): Snap;
}
