public Set<String> getConditionKeyNames(ToShapeId service, ToShapeId resourceOrOperation) {
        ShapeId serviceId = service.toShapeId();
        ShapeId subjectId = resourceOrOperation.toShapeId();
        return Collections.unmodifiableSet(
                resourceConditionKeys.getOrDefault(serviceId, MapUtils.of()).getOrDefault(subjectId, SetUtils.of()));
    }
Get all the defined condition keys used in an operation or resource, including
any inferred keys and keys inherited by parent resource bindings.

@param service Service shape/shapeId use to scope the result.
@param resourceOrOperation Resource or operation shape/shapeId
@return Returns the conditions keys of the service or an empty map when not found.
smithy-aws-iam-traits/src/main/java/software/amazon/smithy/aws/iam/traits/ConditionKeysIndex.java