// ================================================================================
// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT.
// You can delete these comments if you wish manually maintain this interface file.
// ================================================================================

package service

import (
	"context"
	"server/internal/model"
)

type (
	ISignInRewardRules interface {
		// List 获取签到奖励规则列表
		List(ctx context.Context, in *model.SignInRewardRulesListIn) (out *model.SignInRewardRulesListOut, err error)
		// Create 新增签到奖励规则
		Create(ctx context.Context, in *model.SignInRewardRulesCreateIn) (out *model.SignInRewardRulesCRUDOut, err error)
		// Update 编辑签到奖励规则
		Update(ctx context.Context, in *model.SignInRewardRulesUpdateIn) (out *model.SignInRewardRulesCRUDOut, err error)
		// Delete 删除签到奖励规则
		Delete(ctx context.Context, in *model.SignInRewardRulesDeleteIn) (out *model.SignInRewardRulesCRUDOut, err error)
		// SetStatus 设置签到奖励规则状态
		SetStatus(ctx context.Context, in *model.SignInRewardRulesSetStatusIn) (out *model.SignInRewardRulesCRUDOut, err error)
		SignInList(ctx context.Context, in *model.SignInListIn) (out *model.SignInListOut, err error)
	}
)

var (
	localSignInRewardRules ISignInRewardRules
)

func SignInRewardRules() ISignInRewardRules {
	if localSignInRewardRules == nil {
		panic("implement not found for interface ISignInRewardRules, forgot register?")
	}
	return localSignInRewardRules
}

func RegisterSignInRewardRules(i ISignInRewardRules) {
	localSignInRewardRules = i
}
