// go:build wireinject
//go:build wireinject
// +build wireinject

package main

import (
	"github.com/google/wire"
	"micro-bundle/pkg/app"
	"micro-bundle/pkg/db"
	"micro-bundle/pkg/logger"
	"micro-bundle/pkg/snowf"
	"micro-bundle/pkg/tracing"
)

func InitApp() (*app.App, error) {
	wire.Build(logger.Provider, tracing.Provider, snowf.Provider, db.Provider, NewApp)
	return &app.App{}, nil
}