import type { TrpcSessionUser } from '../../../types';
import type { TAppCredentialsByTypeInputSchema } from "./appCredentialsByType.schema";
type AppCredentialsByTypeOptions = {
    ctx: {
        user: NonNullable<TrpcSessionUser>;
    };
    input: TAppCredentialsByTypeInputSchema;
};
/** Used for grabbing credentials on specific app pages */
export declare const appCredentialsByTypeHandler: ({ ctx, input }: AppCredentialsByTypeOptions) => Promise<{
    credentials: ({
        id: number;
        delegatedToId: string;
        userId: number;
        user: {
            email: string;
        };
        key: {
            access_token: string;
        };
        invalid: boolean;
        teamId: null;
        team: null;
        delegatedTo: {
            serviceAccountKey: import("zod").objectOutputType<{
                private_key: import("zod").ZodString;
                client_email: import("zod").ZodOptional<import("zod").ZodString>;
                client_id: import("zod").ZodString;
                tenant_id: import("zod").ZodOptional<import("zod").ZodString>;
            }, import("zod").ZodTypeAny, "passthrough">;
        } | null;
        type: `${string}_other` | `${string}_calendar` | `${string}_messaging` | `${string}_payment` | `${string}_video` | `${string}_automation` | `${string}_analytics` | `${string}_crm` | `${string}_other_calendar`;
        appId: string;
    } | ({
        user: {
            name: string | null;
        } | null;
        team: {
            name: string;
        } | null;
    } & {
        key: import('../../../../../prisma-client').Prisma.JsonValue;
        id: number;
        type: string;
        userId: number | null;
        teamId: number | null;
        subscriptionId: string | null;
        billingCycleStart: number | null;
        appId: string | null;
        paymentStatus: string | null;
        invalid: boolean | null;
    }))[];
    userAdminTeams: number[];
}>;
export {};
//# sourceMappingURL=appCredentialsByType.handler.d.ts.map