import type { GenericMessage } from './message-types.js';
import type { DwnInterfaceName, DwnMethodName } from '../core/message.js';
export declare type SnapshotsCreateDescriptor = {
    interface: DwnInterfaceName.Snapshots;
    method: DwnMethodName.Create;
    messageTimestamp: string;
    definitionCid: string;
};
export declare type SnapshotDefinition = {
    scope: SnapshotScope;
    messageCids: string[];
};
export declare type SnapshotScope = SnapshotPermissionScope | SnapshotProtocolScope;
export declare enum SnapshotScopeType {
    Permissions = "permissions",
    Protocols = "protocols"
}
export declare type SnapshotPermissionScope = {
    type: SnapshotScopeType.Permissions;
    permissionsGrantId: string;
};
export declare type SnapshotProtocolScope = {
    type: SnapshotScopeType.Protocols;
    protocolPath: string;
};
export declare type SnapshotsCreateMessage = GenericMessage & {
    descriptor: SnapshotsCreateDescriptor;
};
//# sourceMappingURL=snapshots-types.d.ts.map