package lifecycle import ( "context" "git.frostfs.info/TrueCloudLab/frostfs-s3-gw/api/data" cid "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/container/id" "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/netmap" oid "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/object/id" "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/pool" "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/user" "github.com/nspcc-dev/neo-go/pkg/crypto/keys" "github.com/nspcc-dev/neo-go/pkg/util" ) type UserFetcher interface { Users() ([]util.Uint160, error) UserKey(hash util.Uint160) (*keys.PublicKey, error) } type ContainerFetcher interface { Containers(owner user.ID) ([]cid.ID, error) } type TreeFetcher interface { GetBucketLifecycleConfiguration(ctx context.Context, bktInfo *data.BucketInfo) (oid.Address, error) } type FrostFSFetcher interface { GetObject(ctx context.Context, addr oid.Address) (pool.ResGetObject, error) NetworkInfo(ctx context.Context) (*netmap.NetworkInfo, error) DeleteObject(ctx context.Context, addr oid.Address) error } type CredentialSource interface { Credentials(ctx context.Context, pk *keys.PublicKey) (*keys.PrivateKey, error) }