import { PrismaService } from "../prisma/prisma.service";
import type { CreateApiKeyDto } from "./dto/create-api-key.dto";
export declare class ApiKeyService {
    private readonly prisma;
    constructor(prisma: PrismaService);
    create(merchantId: string, dto: CreateApiKeyDto): Promise<{
        secret: string;
        type: import("@prisma/client").$Enums.ApiKeyType;
        id: string;
        createdAt: Date;
        prefix: string;
        environment: import("@prisma/client").$Enums.ApiKeyEnvironment;
        scope: import("@prisma/client").$Enums.ApiKeyScope;
        label: string | null;
    }>;
    list(merchantId: string): Promise<{
        type: import("@prisma/client").$Enums.ApiKeyType;
        id: string;
        createdAt: Date;
        prefix: string;
        environment: import("@prisma/client").$Enums.ApiKeyEnvironment;
        scope: import("@prisma/client").$Enums.ApiKeyScope;
        label: string | null;
        lastUsedAt: Date | null;
        revokedAt: Date | null;
    }[]>;
    revoke(merchantId: string, id: string): Promise<{
        type: import("@prisma/client").$Enums.ApiKeyType;
        id: string;
        createdAt: Date;
        merchantId: string;
        prefix: string;
        environment: import("@prisma/client").$Enums.ApiKeyEnvironment;
        scope: import("@prisma/client").$Enums.ApiKeyScope;
        label: string | null;
        hash: string;
        lastUsedAt: Date | null;
        revokedAt: Date | null;
    }>;
}
