import type { ObjectEither } from "typeforge";
export type ObjectRemoveReadOnly<Obj extends Record<any, any>> = {
    -readonly [Key in keyof Obj]: Obj[Key];
} & {};
export type LongRunningOperation<Path extends string, Response extends Record<any, any>> = ObjectEither<{
    path: Path;
    done: true;
    response: {
        [Key in keyof Response]: Response[Key];
    };
}, {
    path: Path;
    done: false;
}>;
