import { Result } from "@webiny/feature/api"; import type { ApiKey, CreateApiKeyInput } from "../shared/types.js"; import { ApiKeysRepository } from "../shared/abstractions.js"; import { ApiKeyNotAuthorizedError, ApiKeyValidationError } from "../shared/errors.js"; export interface ICreateApiKeyErrors { notAuthorized: ApiKeyNotAuthorizedError; validation: ApiKeyValidationError; } type CreateApiKeyError = ICreateApiKeyErrors[keyof ICreateApiKeyErrors] | ApiKeysRepository.Error; export interface ICreateApiKey { execute(input: CreateApiKeyInput): Promise>; } /** Create a new API key. */ export declare const CreateApiKeyUseCase: import("@webiny/di").Abstraction; export declare namespace CreateApiKeyUseCase { type Interface = ICreateApiKey; type Error = CreateApiKeyError; } export interface ApiKeyBeforeCreatePayload { apiKey: ApiKey; input: CreateApiKeyInput; } export interface ApiKeyAfterCreatePayload { apiKey: ApiKey; input: CreateApiKeyInput; } export {};