import { IConnection } from "@nestia/fetcher";
import typia from "typia";
import { IApiOrgsPackagesVersionsRestore } from "../../../../../structures/IApiOrgsPackagesVersionsRestore";
/**
 * Restore package version for an organization.
 * Restores a specific package version in an organization.
 *
 * You can restore a deleted package under the following conditions:
 * - The package was deleted within the last 30 days.
 * - The same package namespace and version is still available and not reused for a new package. If the same package namespace is not available, you will not be able to restore your package. In this scenario, to restore the deleted package, you must delete the new package that uses the deleted package's namespace first.
 *
 * The authenticated user must have admin permissions in the organization to use this endpoint. If the `package_type` belongs to a GitHub Packages registry that supports granular permissions, the authenticated user must also have admin permissions to the package. For the list of these registries, see "[About permissions for GitHub Packages](https://docs.github.com/packages/learn-github-packages/about-permissions-for-github-packages#granular-permissions-for-userorganization-scoped-packages)."
 *
 * OAuth app tokens and personal access tokens (classic) need the `read:packages` and `write:packages` scopes to use this endpoint. If the `package_type` belongs to a GitHub Packages registry that only supports repository-scoped permissions, the `repo` scope is also required. For the list of these registries, see "[About permissions for GitHub Packages](https://docs.github.com/packages/learn-github-packages/about-permissions-for-github-packages#permissions-for-repository-scoped-packages)."
 *
 * @tag packages
 * @path orgs/:org/packages/:package_type/:package_name/versions/:package_version_id/restore
 * @nestia Generated by Nestia - https://github.com/samchon/nestia
 */
export declare function postByOrgAndPackage_typeAndPackage_nameAndPackage_version_id(connection: IConnection<postByOrgAndPackage_typeAndPackage_nameAndPackage_version_id.Headers>, org: string, package_type: string, package_name: string, package_version_id: string): Promise<void>;
export declare namespace postByOrgAndPackage_typeAndPackage_nameAndPackage_version_id {
    type Headers = IApiOrgsPackagesVersionsRestore.PostHeader;
    const METADATA: {
        readonly method: "POST";
        readonly path: "/orgs/:org/packages/:package_type/:package_name/versions/:package_version_id/restore";
        readonly request: null;
        readonly response: {
            readonly type: "application/json";
            readonly encrypted: false;
        };
    };
    const path: (org: string, package_type: string, package_name: string, package_version_id: string) => string;
    const random: (g?: Partial<typia.IRandomGenerator>) => void;
    const simulate: (connection: IConnection<postByOrgAndPackage_typeAndPackage_nameAndPackage_version_id.Headers>, org: string, package_type: string, package_name: string, package_version_id: string) => void;
}
