@@ -2606,6 +2606,52 @@ func (o *KVStore) Insert(key string, value io.Reader) error {
26062606 return nil
26072607}
26082608
2609+ // witx:
2610+ //
2611+ // (@interface func (export "delete_async")
2612+ // (param $store $object_store_handle)
2613+ // (param $key string)
2614+ // (param $pending_handle_out (@witx pointer $pending_kv_delete_handle))
2615+ // (result $err (expected (error $fastly_status)))
2616+ // )
2617+
2618+ //go:wasmimport fastly_object_store delete_async
2619+ //go:noescape
2620+ func fastlyObjectStoreDeleteAsync (
2621+ h objectStoreHandle ,
2622+ keyData prim.Pointer [prim.U8 ], keyLen prim.Usize ,
2623+ pendingReq prim.Pointer [pendingRequestHandle ],
2624+ ) FastlyStatus
2625+
2626+ // witx:
2627+ //
2628+ // (@interface func (export "pending_delete_wait")
2629+ // (param $pending_handle $pending_kv_delete_handle)
2630+ // (result $err (expected (error $fastly_status)))
2631+ // )
2632+
2633+ //go:wasmimport fastly_object_store pending_delete_wait
2634+ //go:noescape
2635+ func fastlyObjectStorePendingDeleteWait (
2636+ pendingReq pendingRequestHandle ,
2637+ ) FastlyStatus
2638+
2639+ // Delete removes a key from the kv store.
2640+ func (o * KVStore ) Delete (key string ) error {
2641+ keyBuffer := prim .NewReadBufferFromString (key ).Wstring ()
2642+
2643+ var handle pendingRequestHandle
2644+ if err := fastlyObjectStoreDeleteAsync (
2645+ o .h ,
2646+ keyBuffer .Data , keyBuffer .Len ,
2647+ prim .ToPointer (& handle ),
2648+ ).toError (); err != nil {
2649+ return err
2650+ }
2651+
2652+ return fastlyObjectStorePendingDeleteWait (handle ).toError ()
2653+ }
2654+
26092655// SecretStore represents a Fastly secret store, a collection of
26102656// key/value pairs for storing sensitive data.
26112657type SecretStore struct {
0 commit comments