class ModifyThing extends AbstractCommand<ModifyThing> implements ThingModifyCommand<ModifyThing> {

    @Deprecated
    public static ModifyThing withCopiedPolicy(final String thingId, final Thing thing,
            final String policyIdOrPlaceholder, final DittoHeaders dittoHeaders) {

        return withCopiedPolicy(ThingId.of(thingId), thing, policyIdOrPlaceholder, dittoHeaders);
    }

    private  ModifyThing(final ThingId thingId, final Thing thing, @Nullable final JsonObject initialPolicy,
            @Nullable final String policyIdOrPlaceholder, final DittoHeaders dittoHeaders);

}