export type ComponentObject = {
    key: string;
    size?: number;
    contentType?: string;
    signedUrl?: string;
};
export type LanguageObjectGroup = {
    objects?: ComponentObject[];
};
export type ComponentTree = {
    prefix: string;
    typescript?: LanguageObjectGroup;
} & Record<string, unknown>;
export type ProjectComponentEntry = {
    name: string;
};
export type ProjectComponentList = {
    userId: string;
    project: string;
    components: ProjectComponentEntry[];
};
export type ComponentRevisionSummary = {
    revision: number;
    createdAt: string;
    mutation: string;
    deleted: boolean;
};
export type ComponentRevisionList = {
    userId: string;
    project: string;
    componentName: string;
    revisions: ComponentRevisionSummary[];
};
export declare const parseComponentRevisionList: (raw: unknown) => ComponentRevisionList;
export declare const parseComponentObject: (raw: unknown) => ComponentObject;
export type PublicComponentState = {
    userId: string;
    project: string;
    componentName: string;
    isPublic: boolean;
    publicRegistryName: string | null;
};
export declare const parsePublicComponentState: (raw: unknown) => PublicComponentState;
export type HistoryFileStatus = 'added' | 'modified' | 'deleted';
export type HistoryFileEntry = {
    key: string;
    status: HistoryFileStatus;
    isBinary: boolean;
    additions: number;
    deletions: number;
    patch?: string;
};
export type HistoryEntry = {
    revision: number;
    previousRevision: number | null;
    createdAt: string;
    mutation: string;
    deleted: boolean;
    files: HistoryFileEntry[];
};
export type ComponentHistory = {
    userId: string;
    project: string;
    componentName: string;
    page: number;
    perPage: number;
    totalRevisions: number;
    fromRevision: number | null;
    toRevision: number | null;
    entries: HistoryEntry[];
};
export declare const parseComponentHistory: (raw: unknown) => ComponentHistory;
export declare const parseProjectComponentList: (raw: unknown) => ProjectComponentList;
//# sourceMappingURL=models.d.ts.map