Go · 6490 bytes Raw Blame History
1 // Code generated by sqlc. DO NOT EDIT.
2 // versions:
3 // sqlc v1.31.1
4
5 package issuesdb
6
7 import (
8 "context"
9
10 "github.com/jackc/pgx/v5/pgtype"
11 )
12
13 type Querier interface {
14 // ─── issue ↔ label ───────────────────────────────────────────────────
15 AddIssueLabel(ctx context.Context, db DBTX, arg AddIssueLabelParams) error
16 // UPDATE … RETURNING is concurrency-safe: each row update is
17 // serialized by the row lock; concurrent transactions see different
18 // values. The caller wraps this in the same tx as the issue insert.
19 AllocateIssueNumber(ctx context.Context, db DBTX, repoID int64) (int64, error)
20 // ─── assignees ───────────────────────────────────────────────────────
21 AssignUserToIssue(ctx context.Context, db DBTX, arg AssignUserToIssueParams) error
22 CountIssueEvents(ctx context.Context, db DBTX, issueID int64) (int64, error)
23 CountIssues(ctx context.Context, db DBTX, arg CountIssuesParams) (int64, error)
24 // ─── issues ──────────────────────────────────────────────────────────
25 CreateIssue(ctx context.Context, db DBTX, arg CreateIssueParams) (Issue, error)
26 // ─── comments ────────────────────────────────────────────────────────
27 CreateIssueComment(ctx context.Context, db DBTX, arg CreateIssueCommentParams) (IssueComment, error)
28 // ─── labels ──────────────────────────────────────────────────────────
29 CreateLabel(ctx context.Context, db DBTX, arg CreateLabelParams) (Label, error)
30 // ─── milestones ──────────────────────────────────────────────────────
31 CreateMilestone(ctx context.Context, db DBTX, arg CreateMilestoneParams) (Milestone, error)
32 DeleteIssueComment(ctx context.Context, db DBTX, id int64) error
33 DeleteLabel(ctx context.Context, db DBTX, id int64) error
34 DeleteMilestone(ctx context.Context, db DBTX, id int64) error
35 // SPDX-License-Identifier: AGPL-3.0-or-later
36 // ─── per-repo numbering ───────────────────────────────────────────────
37 // Lazy-initialize the counter row. Idempotent — invoked from repo
38 // create AND from the first issue insert (defensive in case someone
39 // migrates an old repo that predates S21).
40 EnsureRepoIssueCounter(ctx context.Context, db DBTX, repoID int64) error
41 GetIssueByID(ctx context.Context, db DBTX, id int64) (Issue, error)
42 GetIssueByNumber(ctx context.Context, db DBTX, arg GetIssueByNumberParams) (Issue, error)
43 GetIssueComment(ctx context.Context, db DBTX, id int64) (IssueComment, error)
44 GetLabelByName(ctx context.Context, db DBTX, arg GetLabelByNameParams) (Label, error)
45 GetMilestone(ctx context.Context, db DBTX, id int64) (Milestone, error)
46 // ─── events + references ─────────────────────────────────────────────
47 InsertIssueEvent(ctx context.Context, db DBTX, arg InsertIssueEventParams) (IssueEvent, error)
48 InsertIssueReference(ctx context.Context, db DBTX, arg InsertIssueReferenceParams) error
49 ListIssueAssignees(ctx context.Context, db DBTX, issueID int64) ([]ListIssueAssigneesRow, error)
50 ListIssueComments(ctx context.Context, db DBTX, issueID int64) ([]IssueComment, error)
51 ListIssueEvents(ctx context.Context, db DBTX, issueID int64) ([]IssueEvent, error)
52 // Paginated timeline shape for the REST `/issues/{n}/events` endpoint:
53 // the same event rows ListIssueEvents returns, but LEFT-joined to users
54 // so the response can carry `actor_username` without a second round-trip.
55 // Suspended/deleted actor rows still appear (the timeline is historical
56 // truth), with NULL username when the user row is unrecoverable.
57 ListIssueEventsWithActor(ctx context.Context, db DBTX, arg ListIssueEventsWithActorParams) ([]ListIssueEventsWithActorRow, error)
58 // Filterable list. Caller passes a state filter (open/closed/all
59 // where 'all' is encoded as NULL); label/assignee/author/milestone
60 // filtering happens after this query in Go for v1 — see the
61 // internal/issues/list.go composer. Per-page hardcoded at 25 in the
62 // handler; offset is the (page-1)*25.
63 ListIssues(ctx context.Context, db DBTX, arg ListIssuesParams) ([]Issue, error)
64 ListLabels(ctx context.Context, db DBTX, repoID int64) ([]Label, error)
65 ListLabelsOnIssue(ctx context.Context, db DBTX, issueID int64) ([]Label, error)
66 ListMilestones(ctx context.Context, db DBTX, repoID int64) ([]Milestone, error)
67 // Cross-repository profile contribution activity. The handler performs the
68 // final repo visibility gate with policy.IsVisibleTo so private issues and
69 // PRs never leak through the public profile timeline.
70 ListProfileAuthoredIssuesForUser(ctx context.Context, db DBTX, arg ListProfileAuthoredIssuesForUserParams) ([]ListProfileAuthoredIssuesForUserRow, error)
71 // Open + closed counts for the milestone progress bar.
72 MilestoneIssueCounts(ctx context.Context, db DBTX, milestoneID pgtype.Int8) (MilestoneIssueCountsRow, error)
73 RemoveIssueLabel(ctx context.Context, db DBTX, arg RemoveIssueLabelParams) error
74 SetIssueLock(ctx context.Context, db DBTX, arg SetIssueLockParams) error
75 SetIssueMilestone(ctx context.Context, db DBTX, arg SetIssueMilestoneParams) error
76 SetIssueState(ctx context.Context, db DBTX, arg SetIssueStateParams) error
77 SetMilestoneState(ctx context.Context, db DBTX, arg SetMilestoneStateParams) error
78 UnassignUserFromIssue(ctx context.Context, db DBTX, arg UnassignUserFromIssueParams) error
79 UpdateIssueCommentBody(ctx context.Context, db DBTX, arg UpdateIssueCommentBodyParams) error
80 UpdateIssueTitleBody(ctx context.Context, db DBTX, arg UpdateIssueTitleBodyParams) error
81 UpdateLabel(ctx context.Context, db DBTX, arg UpdateLabelParams) error
82 UpdateMilestone(ctx context.Context, db DBTX, arg UpdateMilestoneParams) error
83 }
84
85 var _ Querier = (*Queries)(nil)
86