package com.kryptnostic.sharing.v1;

import java.io.IOException;
import java.util.Set;

import com.kryptnostic.directory.v1.models.UserKey;
import com.kryptnostic.kodex.v1.crypto.keys.CryptoServiceLoader;
import com.kryptnostic.kodex.v1.exceptions.types.ResourceNotFoundException;
import com.kryptnostic.kodex.v1.exceptions.types.SecurityConfigurationException;
import com.kryptnostic.storage.v1.models.EncryptedSearchObjectKey;

public interface SharingClient {
    void unshareObjectWithUsers( String objectId, Set<UserKey> users );

    void shareObjectWithUsers( CryptoServiceLoader loader, String uuid, Set<UserKey> users );

    int processIncomingShares( CryptoServiceLoader loader ) throws IOException, SecurityConfigurationException;

    int getIncomingSharesCount();

    EncryptedSearchObjectKey getObjectKey( String objectId ) throws ResourceNotFoundException;
}

@@ -137,73 +137,8 @@
 ey;%0A
-import com.kryptnostic.kodex.v1.crypto.keys.CryptoServiceLoader;%0A
 impo
@@ -498,36 +498,8 @@
 ers(
- CryptoServiceLoader loader,
  Str
@@ -524,24 +524,57 @@
 Key%3E users )
+ throws ResourceNotFoundException
 ;%0A%0A    int p
@@ -598,36 +598,8 @@
 res(
- CryptoServiceLoader loader 
 ) th

remove cryptoServiceLoader from sharing client params bc its unnecessary since its in context