import type { Prisma } from '../../../prisma-client';
export declare class CredentialRepository {
    static create(data: Prisma.CredentialCreateInput): Promise<{
        key: Prisma.JsonValue;
        invalid: boolean | null;
        type: string;
        id: number;
        userId: number | null;
        teamId: number | null;
        subscriptionId: string | null;
        billingCycleStart: number | null;
        appId: string | null;
        paymentStatus: string | null;
    }>;
    /**
     * Doesn't retrieve key field as that has credentials
     */
    static findFirstByIdWithUser({ id }: {
        id: number;
    }): Promise<{
        invalid: boolean | null;
        type: string;
        id: number;
        userId: number | null;
        user: {
            email: string;
        } | null;
        teamId: number | null;
        appId: string | null;
    } | null>;
    /**
     * Includes 'key' field which is sensitive data.
     */
    static findFirstByIdWithKeyAndUser({ id }: {
        id: number;
    }): Promise<{
        key: Prisma.JsonValue;
        invalid: boolean | null;
        type: string;
        id: number;
        userId: number | null;
        user: {
            email: string;
        } | null;
        teamId: number | null;
        appId: string | null;
    } | null>;
}
//# sourceMappingURL=credential.d.ts.map