import { Author } from './author';
export type SnapProps = {
    hash: string;
    timestamp: string;
    parents: string[];
    author: Author;
    message: string;
};
/**
 * `Snap` represents a sealed state of the component in the working tree.
 */
export declare class Snap {
    /**
     * hash of the snap.
     */
    readonly hash: string;
    /**
     * date time of the snap.
     */
    readonly timestamp: Date;
    /**
     * parent snap
     */
    readonly parents: string[];
    /**
     * author of the component `Snap`.
     */
    readonly author: Author;
    /**
     * message added by the `Snap` author.
     */
    readonly message: string;
    constructor(
    /**
     * hash of the snap.
     */
    hash: string, 
    /**
     * date time of the snap.
     */
    timestamp: Date, 
    /**
     * parent snap
     */
    parents: string[], 
    /**
     * author of the component `Snap`.
     */
    author: Author, 
    /**
     * message added by the `Snap` author.
     */
    message: string);
    static fromObject(snapObject: SnapProps): Snap;
    toObject(): SnapProps;
}
