import { BaseMetadata } from "./base-metadata.data.model";
import { Location } from "./location.model";
export declare class Views {
    comment?: CommentViews;
    notification?: {
        [notificationId: string]: {
            views: {
                [userSnippylyId: string]: View;
            };
        };
    };
    documentViews?: {
        [documentId: string]: DocumentViews;
    };
    locationViews?: {
        [locationId: string]: LocationViews;
    };
}
export declare class View {
    timestamp: any;
}
export declare class ViewsByDate {
    [date: string]: {
        [userSnippylyId: string]: View;
    };
}
export declare class ViewsByUser {
    [userSnippylyId: string]: {
        [date: string]: View;
    };
}
export declare class CommentViews {
    [commentAnnotationId: string]: CommentAnnotationViews;
}
export declare class LocationViewsMap {
    [locationId: string]: LocationViews;
}
export declare class CommentAnnotationViews {
    views: {
        [userSnippylyId: string]: View;
    };
    comments: {
        [commentId: string]: {
            views: {
                [userSnippylyId: string]: View;
            };
        };
    };
    metadata?: BaseMetadata;
}
export declare class DocumentViewsMap {
    [documentId: string]: DocumentViews;
}
export declare class DocumentViews {
    users: ViewsByUser;
    day: ViewsByDate;
    metadata?: BaseMetadata;
}
export declare class LocationViews {
    location: Location;
    users: ViewsByUser;
    day: ViewsByDate;
    metadata?: BaseMetadata;
}
