import type { User } from './clientTypes.ts';
/**
 * Known payloads sent to `firstPartyPath` and handled by
 * `createSuperlayerRouteHandler`.
 */
export type SuperlayerRouteHandlerPayloadByType = {
    'sync-user': {
        appId: string;
        user: User | null;
    };
};
/** Known `type` values for Superlayer route handler request bodies. */
export type SuperlayerRouteHandlerType = keyof SuperlayerRouteHandlerPayloadByType;
/** A valid request body for Superlayer's first-party route handler protocol. */
export type SuperlayerRouteHandlerBody<Type extends SuperlayerRouteHandlerType = SuperlayerRouteHandlerType> = {
    [KnownType in Type]: {
        type: KnownType;
    } & SuperlayerRouteHandlerPayloadByType[KnownType];
}[Type];
//# sourceMappingURL=routeHandlerProtocol.d.ts.map