import { AccessKeyData, OAuth2Access } from "../types/project.types.js";
import { ResponseData } from "../utils/responseData.js";
import { FastifyReply, FastifyRequest } from "fastify";

//#region src/controllers/projectAccessKey.controller.d.ts
type AddNewAccessKeyBody = AccessKeyData;
type AddNewAccessKeyResponse = ResponseData<OAuth2Access>;
/**
 * Adds a new access key to a project.
 */
declare const addNewAccessKey: (request: FastifyRequest<{
  Body: AddNewAccessKeyBody;
}>, reply: FastifyReply) => Promise<void>;
type DeleteAccessKeyBody = {
  clientId: string;
};
type DeleteAccessKeyResponse = ResponseData<null>;
/**
 * Deletes an access key from a project.
 */
declare const deleteAccessKey: (request: FastifyRequest<{
  Body: DeleteAccessKeyBody;
}>, reply: FastifyReply) => Promise<void>;
type RefreshAccessKeyBody = {
  clientId: string;
};
type RefreshAccessKeyResponse = ResponseData<OAuth2Access>;
/**
 * Refreshes an access key from a project.
 */
declare const refreshAccessKey: (request: FastifyRequest<{
  Body: RefreshAccessKeyBody;
}>, reply: FastifyReply) => Promise<void>;
//#endregion
export { AddNewAccessKeyBody, AddNewAccessKeyResponse, DeleteAccessKeyBody, DeleteAccessKeyResponse, RefreshAccessKeyBody, RefreshAccessKeyResponse, addNewAccessKey, deleteAccessKey, refreshAccessKey };
//# sourceMappingURL=projectAccessKey.controller.d.ts.map