+CREATE OR REPLACE FUNCTION jsonb_delete(jsonb, numeric[])
+RETURNS jsonb
+ AS 'MODULE_PATHNAME', 'jsonb_delete_keys'
+LANGUAGE C IMMUTABLE STRICT;
+COMMENT ON FUNCTION jsonb_delete(jsonb, numeric[]) IS 'delete numeric elements in second argument from first argument';
+
+DROP OPERATOR IF EXISTS - (jsonb, numeric[]);
+CREATE OPERATOR - ( PROCEDURE = jsonb_delete, LEFTARG = jsonb, RIGHTARG = numeric[]);
+COMMENT ON OPERATOR - (jsonb, numeric[]) IS 'delete numeric elements from left operand';
+
+--
+
+CREATE OR REPLACE FUNCTION jsonb_delete(jsonb, boolean[])
+RETURNS jsonb
+ AS 'MODULE_PATHNAME', 'jsonb_delete_keys'
+LANGUAGE C IMMUTABLE STRICT;
+COMMENT ON FUNCTION jsonb_delete(jsonb, boolean[]) IS 'delete boolean elements in second argument from first argument';
+
+DROP OPERATOR IF EXISTS - (jsonb, boolean[]);
+CREATE OPERATOR - ( PROCEDURE = jsonb_delete, LEFTARG = jsonb, RIGHTARG = boolean[]);
+COMMENT ON OPERATOR - (jsonb, boolean[]) IS 'delete boolean elements from left operand';
+
+--
+