// Copyright 2013 The Flutter Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import 'package:pigeon/pigeon.dart'; @ConfigurePigeon( PigeonOptions( dartOut: 'lib/src/messages.g.dart', swiftOut: 'darwin/shared_preferences_foundation/Sources/shared_preferences_foundation/messages.g.swift', copyrightHeader: 'pigeons/copyright_header.txt', ), ) @HostApi() abstract class LegacyUserDefaultsApi { void remove(String key); void setBool(String key, bool value); void setDouble(String key, double value); void setValue(String key, Object value); Map getAll(String prefix, List? allowList); bool clear(String prefix, List? allowList); } class SharedPreferencesPigeonOptions { SharedPreferencesPigeonOptions({this.suiteName}); String? suiteName; } @HostApi() abstract class UserDefaultsApi { /// Adds property to shared preferences data set of type String. @SwiftFunction('set(key:value:options:)') void set(String key, Object value, SharedPreferencesPigeonOptions options); /// Removes all properties from shared preferences data set with matching prefix. void clear(List? allowList, SharedPreferencesPigeonOptions options); /// Gets all properties from shared preferences data set with matching prefix. Map getAll( List? allowList, SharedPreferencesPigeonOptions options, ); /// Gets individual value stored with [key], if any. Object? getValue(String key, SharedPreferencesPigeonOptions options); /// Gets all properties from shared preferences data set with matching prefix. List getKeys( List? allowList, SharedPreferencesPigeonOptions options, ); }