import { ChannelProperties } from '@towns-protocol/proto';
import { Membership } from '../models/timelineTypes';
import { DmStreamModel } from '../streams/dmStreams';
import { GdmStreamModel } from '../streams/gdmStreams';
export interface DmAndGdmModel {
    id: string;
    joined: boolean;
    left: boolean;
    userIds: string[];
    properties?: ChannelProperties;
    isDecryptingProperties?: boolean;
    lastEventCreatedAtEpochMs: bigint;
    isGdm: boolean;
}
interface Input {
    userId: string;
    memberships: Record<string, Membership>;
    streamMemberIds: Record<string, string[] | undefined>;
    dmStreams: Record<string, DmStreamModel | undefined>;
    gdmStreams: Record<string, GdmStreamModel | undefined>;
}
export declare function dmsAndGdmsTransform(value: Input, prev: Input, prevResult?: DmAndGdmModel[]): DmAndGdmModel[];
export {};
//# sourceMappingURL=dmsAndGdmsTransform.d.ts.map