import { APIGatewayEvent, CreateAWSLambdaContextOptions } from '@trpc/server/adapters/aws-lambda';
import { OpenApiMeta } from 'trpc-openapi';
export type Context = {
    user?: {
        did: string;
        isChallengeValid: boolean;
    };
    domain: string;
};
export declare const t: {
    _config: import("@trpc/server").RootConfig<{
        ctx: Context;
        meta: OpenApiMeta;
        errorShape: import("@trpc/server").DefaultErrorShape;
        transformer: import("@trpc/server").DefaultDataTransformer;
    }>;
    procedure: import("@trpc/server").ProcedureBuilder<{
        _config: import("@trpc/server").RootConfig<{
            ctx: Context;
            meta: OpenApiMeta;
            errorShape: import("@trpc/server").DefaultErrorShape;
            transformer: import("@trpc/server").DefaultDataTransformer;
        }>;
        _ctx_out: Context;
        _input_in: typeof import("@trpc/server").unsetMarker;
        _input_out: typeof import("@trpc/server").unsetMarker;
        _output_in: typeof import("@trpc/server").unsetMarker;
        _output_out: typeof import("@trpc/server").unsetMarker;
        _meta: OpenApiMeta;
    }>;
    middleware: <TNewParams extends import("@trpc/server").ProcedureParams<import("@trpc/server").AnyRootConfig, unknown, unknown, unknown, unknown, unknown, unknown>>(fn: import("@trpc/server").MiddlewareFunction<{
        _config: import("@trpc/server").RootConfig<{
            ctx: Context;
            meta: OpenApiMeta;
            errorShape: import("@trpc/server").DefaultErrorShape;
            transformer: import("@trpc/server").DefaultDataTransformer;
        }>;
        _ctx_out: Context;
        _input_out: unknown;
        _input_in: unknown;
        _output_in: unknown;
        _output_out: unknown;
        _meta: OpenApiMeta;
    }, TNewParams>) => import("@trpc/server").MiddlewareBuilder<{
        _config: import("@trpc/server").RootConfig<{
            ctx: Context;
            meta: OpenApiMeta;
            errorShape: import("@trpc/server").DefaultErrorShape;
            transformer: import("@trpc/server").DefaultDataTransformer;
        }>;
        _ctx_out: Context;
        _input_out: unknown;
        _input_in: unknown;
        _output_in: unknown;
        _output_out: unknown;
        _meta: OpenApiMeta;
    }, TNewParams>;
    router: <TProcRouterRecord extends import("@trpc/server").ProcedureRouterRecord>(procedures: TProcRouterRecord) => import("@trpc/server").CreateRouterInner<import("@trpc/server").RootConfig<{
        ctx: Context;
        meta: OpenApiMeta;
        errorShape: import("@trpc/server").DefaultErrorShape;
        transformer: import("@trpc/server").DefaultDataTransformer;
    }>, TProcRouterRecord>;
    mergeRouters: typeof import("@trpc/server").mergeRouters;
};
export declare const createContext: ({ event, }: CreateAWSLambdaContextOptions<APIGatewayEvent>) => Promise<Context>;
export declare const openRoute: import("@trpc/server").ProcedureBuilder<{
    _config: import("@trpc/server").RootConfig<{
        ctx: Context;
        meta: OpenApiMeta;
        errorShape: import("@trpc/server").DefaultErrorShape;
        transformer: import("@trpc/server").DefaultDataTransformer;
    }>;
    _meta: OpenApiMeta;
    _ctx_out: import("@trpc/server").Overwrite<Omit<Context, never>, {
        user?: {
            did: string;
            isChallengeValid: boolean;
        } | undefined;
        domain: string;
    }>;
    _input_in: typeof import("@trpc/server").unsetMarker;
    _input_out: typeof import("@trpc/server").unsetMarker;
    _output_in: typeof import("@trpc/server").unsetMarker;
    _output_out: typeof import("@trpc/server").unsetMarker;
}>;
export declare const didRoute: import("@trpc/server").ProcedureBuilder<{
    _config: import("@trpc/server").RootConfig<{
        ctx: Context;
        meta: OpenApiMeta;
        errorShape: import("@trpc/server").DefaultErrorShape;
        transformer: import("@trpc/server").DefaultDataTransformer;
    }>;
    _meta: OpenApiMeta;
    _ctx_out: import("@trpc/server").Overwrite<import("@trpc/server").Overwrite<Omit<Context, never>, {
        user?: {
            did: string;
            isChallengeValid: boolean;
        } | undefined;
        domain: string;
    }>, {
        user: {
            did: string;
            isChallengeValid: boolean;
        };
        domain: string;
    }>;
    _input_in: typeof import("@trpc/server").unsetMarker;
    _input_out: typeof import("@trpc/server").unsetMarker;
    _output_in: typeof import("@trpc/server").unsetMarker;
    _output_out: typeof import("@trpc/server").unsetMarker;
}>;
export declare const didAndChallengeRoute: import("@trpc/server").ProcedureBuilder<{
    _config: import("@trpc/server").RootConfig<{
        ctx: Context;
        meta: OpenApiMeta;
        errorShape: import("@trpc/server").DefaultErrorShape;
        transformer: import("@trpc/server").DefaultDataTransformer;
    }>;
    _meta: OpenApiMeta;
    _ctx_out: import("@trpc/server").Overwrite<import("@trpc/server").Overwrite<import("@trpc/server").Overwrite<Omit<Context, never>, {
        user?: {
            did: string;
            isChallengeValid: boolean;
        } | undefined;
        domain: string;
    }>, {
        user: {
            did: string;
            isChallengeValid: boolean;
        };
        domain: string;
    }>, {
        user: {
            did: string;
            isChallengeValid: boolean;
        };
        domain: string;
    }>;
    _input_in: typeof import("@trpc/server").unsetMarker;
    _input_out: typeof import("@trpc/server").unsetMarker;
    _output_in: typeof import("@trpc/server").unsetMarker;
    _output_out: typeof import("@trpc/server").unsetMarker;
}>;
