import * as Generator from '@postxl/generator';
import { WithActions } from '../backend-actions';
import { WithBackend } from '../backend-core';
import { WithDatabase } from '../backend-database-prisma';
import { WithRepositories } from '../backend-repositories';
import { WithSeed } from '../backend-seed';
import { WithBase } from '../base';
import { WithDecoders } from '../decoders';
type ContextRequirements = WithDatabase<WithSeed<WithDecoders<WithActions<WithRepositories<WithBackend<WithBase<Generator.Context>>>>>>>;
export type ContextResult = WithBackendE2e<ContextRequirements>;
export type WithBackendE2e<Context> = Generator.ExtendContext<Context, {
    e2eBackend: BackendE2eContext;
}>;
export type BackendE2eContext = {
    module: Generator.ImportableItem;
    service: Generator.ImportableItem & {
        factory: Generator.ImportableFunction;
    };
    controller: Generator.ImportableItem;
};
export declare const generatorId: string & import("zod").$brand<"PXL.GeneratorInterfaceId">;
export declare const generator: Generator.GeneratorInterface;
export {};
