import { IConnection } from "@nestia/fetcher";
import typia from "typia";
import { IApiReposGitMatchingRefs } from "../../../../structures/IApiReposGitMatchingRefs";
import { git_minus_ref } from "../../../../structures/git_minus_ref";
/**
 * List matching references.
 * Returns an array of references from your Git database that match the supplied name. The `:ref` in the URL must be formatted as `heads/<branch name>` for branches and `tags/<tag name>` for tags. If the `:ref` doesn't exist in the repository, but existing refs start with `:ref`, they will be returned as an array.
 *
 * When you use this endpoint without providing a `:ref`, it will return an array of all the references from your Git database, including notes and stashes if they exist on the server. Anything in the namespace is returned, not just `heads` and `tags`.
 *
 * > [!NOTE]
 * > You need to explicitly [request a pull request](https://docs.github.com/rest/pulls/pulls#get-a-pull-request) to trigger a test merge commit, which checks the mergeability of pull requests. For more information, see "[Checking mergeability of pull requests](https://docs.github.com/rest/guides/getting-started-with-the-git-database-api#checking-mergeability-of-pull-requests)".
 *
 * If you request matching references for a branch named `feature` but the branch `feature` doesn't exist, the response can still include other matching head refs that start with the word `feature`, such as `featureA` and `featureB`.
 *
 * @tag git
 * @path repos/:owner/:repo/git/matching-refs/:ref
 * @nestia Generated by Nestia - https://github.com/samchon/nestia
 */
export declare function getByOwnerAndRepoAndRef(connection: IConnection<getByOwnerAndRepoAndRef.Headers>, owner: string, repo: string, ref: string): Promise<getByOwnerAndRepoAndRef.Output>;
export declare namespace getByOwnerAndRepoAndRef {
    type Headers = IApiReposGitMatchingRefs.GetHeader;
    type Output = git_minus_ref[];
    const METADATA: {
        readonly method: "GET";
        readonly path: "/repos/:owner/:repo/git/matching-refs/:ref";
        readonly request: null;
        readonly response: {
            readonly type: "application/json";
            readonly encrypted: false;
        };
    };
    const path: (owner: string, repo: string, ref: string) => string;
    const random: (g?: Partial<typia.IRandomGenerator>) => git_minus_ref[];
    const simulate: (connection: IConnection<getByOwnerAndRepoAndRef.Headers>, owner: string, repo: string, ref: string) => Output;
}
