// Code generated by github.com/Khan/genqlient, DO NOT EDIT.

package graph

import (
	"context"

	"github.com/Khan/genqlient/graphql"
)

// GetWaitlistGetWaitlistWaitlistEntry includes the requested fields of the GraphQL type WaitlistEntry.
type GetWaitlistGetWaitlistWaitlistEntry struct {
	Email string `json:"email"`
}

// GetEmail returns GetWaitlistGetWaitlistWaitlistEntry.Email, and is useful for accessing the field via an interface.
func (v *GetWaitlistGetWaitlistWaitlistEntry) GetEmail() string { return v.Email }

// GetWaitlistResponse is returned by GetWaitlist on success.
type GetWaitlistResponse struct {
	// Roles: flowy-admin
	GetWaitlist []GetWaitlistGetWaitlistWaitlistEntry `json:"getWaitlist"`
}

// GetGetWaitlist returns GetWaitlistResponse.GetWaitlist, and is useful for accessing the field via an interface.
func (v *GetWaitlistResponse) GetGetWaitlist() []GetWaitlistGetWaitlistWaitlistEntry {
	return v.GetWaitlist
}

// The query executed by GetWaitlist.
const GetWaitlist_Operation = `
query GetWaitlist {
	getWaitlist {
		email
	}
}
`

func GetWaitlist(
	ctx_ context.Context,
	client_ graphql.Client,
) (data_ *GetWaitlistResponse, err_ error) {
	req_ := &graphql.Request{
		OpName: "GetWaitlist",
		Query:  GetWaitlist_Operation,
	}

	data_ = &GetWaitlistResponse{}
	resp_ := &graphql.Response{Data: data_}

	err_ = client_.MakeRequest(
		ctx_,
		req_,
		resp_,
	)

	return data_, err_
}
