// Code generated by sdkgen. DO NOT EDIT.

package backup

import (
	"context"

	"google.golang.org/grpc"
)

// Backup provides access to "backup" component of Yandex.Cloud
type Backup struct {
	getConn func(ctx context.Context) (*grpc.ClientConn, error)
}

// NewBackup creates instance of Backup
func NewBackup(g func(ctx context.Context) (*grpc.ClientConn, error)) *Backup {
	return &Backup{g}
}

// Resource gets ResourceService client
func (b *Backup) Resource() *ResourceServiceClient {
	return &ResourceServiceClient{getConn: b.getConn}
}

// Backup gets BackupService client
func (b *Backup) Backup() *BackupServiceClient {
	return &BackupServiceClient{getConn: b.getConn}
}

// Policy gets PolicyService client
func (b *Backup) Policy() *PolicyServiceClient {
	return &PolicyServiceClient{getConn: b.getConn}
}

// Provider gets ProviderService client
func (b *Backup) Provider() *ProviderServiceClient {
	return &ProviderServiceClient{getConn: b.getConn}
}
