<?xml version="1.0"?>
<doc>
    <assembly>
        <name>FireflyClient</name>
    </assembly>
    <members>
        <member name="T:FireflyClient.Properties.Resources">
            <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
        </member>
        <member name="P:FireflyClient.Properties.Resources.ResourceManager">
            <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
        </member>
        <member name="P:FireflyClient.Properties.Resources.Culture">
            <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
        </member>
        <member name="P:FireflyClient.Properties.Resources.icon">
            <summary>
              Looks up a localized resource of type System.Byte[].
            </summary>
        </member>
        <member name="P:FireflyClient.Properties.Resources.icon1">
            <summary>
              Looks up a localized resource of type System.Byte[].
            </summary>
        </member>
        <member name="T:FireflyClient.FireflyClient">
            <summary>
            FireflyClient provides a clean API for interacting with the Firefly server.
            This can be used as a library for integrating with other applications.
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.#ctor(System.String,System.Int32)">
            <summary>
            Creates a new FireflyClient and connects to the specified server
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.#ctor(System.String,System.Int32,System.String)">
            <summary>
            Creates a new FireflyClient, connects to the server and authenticates
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.Authenticate(System.String)">
            <summary>
            Authenticates with the server using the provided password
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ExecuteCommand(System.String,System.String[])">
            <summary>
            Executes a raw command with any number of arguments
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.SetPipelineMode(System.Boolean)">
            <summary>
            Enables or disables pipeline mode
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.FlushPipeline">
            <summary>
            Flushes any queued commands in pipeline mode
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.SetBatchSize(System.Int32)">
            <summary>
            Sets the maximum number of commands to batch before sending
            </summary>
        </member>
        <member name="P:FireflyClient.FireflyClient.QueuedCommandCount">
            <summary>
            Gets the current number of queued commands
            </summary>
        </member>
        <member name="P:FireflyClient.FireflyClient.IsPipelineMode">
            <summary>
            Gets whether pipeline mode is enabled
            </summary>
        </member>
        <member name="P:FireflyClient.FireflyClient.MaxBatchSize">
            <summary>
            Gets the maximum batch size
            </summary>
        </member>
        <member name="P:FireflyClient.FireflyClient.IsConnected">
            <summary>
            Gets whether the client is connected to the server
            </summary>
        </member>
        <member name="P:FireflyClient.FireflyClient.IsAuthenticated">
            <summary>
            Gets whether the client is authenticated
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.Keys(System.String)">
            <summary>
            Gets all keys matching the specified pattern
            </summary>
            <param name="pattern">Pattern to match against keys. Use * for wildcard matches.</param>
            <returns>List of matching keys, or empty list if none found or on error</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.ParseArrayResponse(System.String)">
            <summary>
            Parses an array response from the server
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.Dispose">
            <inheritdoc/>
        </member>
        <member name="M:FireflyClient.FireflyClient.HashSet(System.String,System.String,System.String)">
            <summary>
            Sets a field in a hash
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.HashGet(System.String,System.String)">
            <summary>
            Gets a field from a hash
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.HashDelete(System.String,System.String)">
            <summary>
            Deletes a field from a hash
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.HashFieldExists(System.String,System.String)">
            <summary>
            Checks if a field exists in a hash
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.HashGetAll(System.String)">
            <summary>
            Gets all fields and values from a hash
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.HashMultiSet(System.String,System.Collections.Generic.Dictionary{System.String,System.String})">
            <summary>
            Sets multiple fields in a hash at once
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ListLeftPush(System.String,System.String[])">
            <summary>
            Adds values to the beginning of a list
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ListRightPush(System.String,System.String[])">
            <summary>
            Adds values to the end of a list
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ListLeftPop(System.String)">
            <summary>
            Removes and returns the first element of a list
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ListRightPop(System.String)">
            <summary>
            Removes and returns the last element of a list
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ListRange(System.String,System.Int32,System.Int32)">
            <summary>
            Gets a range of elements from a list
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ListIndex(System.String,System.Int32)">
            <summary>
            Gets the element at the specified index in a list
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ListSet(System.String,System.Int32,System.String)">
            <summary>
            Sets the element at the specified index in a list
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ListPosition(System.String,System.String,System.Int32,System.Int32)">
            <summary>
            Returns the index of the first occurrence of an element in a list
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ListTrim(System.String,System.Int32,System.Int32)">
            <summary>
            Trims a list to the specified range
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.ListRemove(System.String,System.Int32,System.String)">
            <summary>
            Removes elements equal to the given value from a list
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.CreateClient(System.IntPtr,System.Int32)">
            <summary>
            Creates a new FireflyClient instance for native interop
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.DestroyClient(System.IntPtr)">
            <summary>
            Destroys a FireflyClient instance created for native interop
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeAuthenticate(System.IntPtr,System.IntPtr)">
            <summary>
            Authenticates with the server using the provided password
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeExecuteCommand(System.IntPtr,System.IntPtr,System.IntPtr)">
            <summary>
            Executes a raw command. Note: Argument parsing is basic.
            Consider using specific functions instead for reliability.
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeFreeString(System.IntPtr)">
            <summary>
            Frees a string allocated by the native interop methods
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeStringSet(System.IntPtr,System.IntPtr,System.IntPtr)">
            <summary>
            Sets a string value for a given key (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the key.</param>
            <param name="valuePtr">Pointer to a null-terminated UTF-8 string representing the value.</param>
            <returns>True if the command was successful (e.g., server replied OK), false otherwise.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeStringGet(System.IntPtr,System.IntPtr)">
            <summary>
            Gets a string value for a given key (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the key.</param>
            <returns>Pointer to a null-terminated UTF-8 string result allocated via AllocHGlobal (caller must free with FreeString), or IntPtr.Zero on error or if key not found.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeDelete(System.IntPtr,System.IntPtr)">
            <summary>
            Deletes one or more keys (Native Interop).
            Note: Currently only supports deleting a single key via the C# Delete method.
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the key to delete.</param>
            <returns>The number of keys that were removed (typically 1 or 0), or 0 on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeListLeftPush(System.IntPtr,System.IntPtr,System.IntPtr)">
            <summary>
            Adds a value to the beginning of a list (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the list key.</param>
            <param name="valuePtr">Pointer to a null-terminated UTF-8 string representing the value to add.</param>
            <returns>The length of the list after the push operation, or 0 on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeListRightPush(System.IntPtr,System.IntPtr,System.IntPtr)">
            <summary>
            Adds a value to the end of a list (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the list key.</param>
            <param name="valuePtr">Pointer to a null-terminated UTF-8 string representing the value to add.</param>
            <returns>The length of the list after the push operation, or 0 on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeListLeftPop(System.IntPtr,System.IntPtr)">
            <summary>
            Removes and returns the first element of a list (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the list key.</param>
            <returns>Pointer to a null-terminated UTF-8 string result allocated via AllocHGlobal (caller must free with FreeString), or IntPtr.Zero on error or if list is empty.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeListRightPop(System.IntPtr,System.IntPtr)">
            <summary>
            Removes and returns the last element of a list (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the list key.</param>
            <returns>Pointer to a null-terminated UTF-8 string result allocated via AllocHGlobal (caller must free with FreeString), or IntPtr.Zero on error or if list is empty.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeListRange(System.IntPtr,System.IntPtr,System.Int32,System.Int32)">
            <summary>
            Gets a range of elements from a list (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the list key.</param>
            <param name="start">The start index (0-based).</param>
            <param name="stop">The stop index (inclusive, use -1 for end).</param>
            <returns>Pointer to a null-terminated UTF-8 string containing newline-delimited list elements, allocated via AllocHGlobal (caller must free with FreeString), or IntPtr.Zero on error.</returns>
            <remarks>The returned IntPtr points to a single string. The native caller must parse this string (e.g., split by '\n') and free the pointer using NativeFreeString.</remarks>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeListIndex(System.IntPtr,System.IntPtr,System.Int32)">
            <summary>
            Gets an element from a list by its index (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the list key.</param>
            <param name="index">The index of the element (0-based).</param>
            <returns>Pointer to a null-terminated UTF-8 string result allocated via AllocHGlobal (caller must free with FreeString), or IntPtr.Zero on error or if index is out of range.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeListSet(System.IntPtr,System.IntPtr,System.Int32,System.IntPtr)">
            <summary>
            Sets the value of an element in a list by its index (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the list key.</param>
            <param name="index">The index of the element to set (0-based).</param>
            <param name="valuePtr">Pointer to a null-terminated UTF-8 string representing the new value.</param>
            <returns>True if the command was successful, false otherwise (e.g., index out of range).</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeListPosition(System.IntPtr,System.IntPtr,System.IntPtr,System.Int32,System.Int32)">
            <summary>
            Returns the index of the first occurrence of an element in a list (Native Interop).
            Rank and MaxLen parameters are currently ignored.
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the list key.</param>
            <param name="elementPtr">Pointer to a null-terminated UTF-8 string representing the element to find.</param>
            <param name="rank">Optional rank (ignored).</param>
            <param name="maxlen">Optional max length (ignored).</param>
            <returns>The 0-based index of the element, or -1 if not found or on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeListTrim(System.IntPtr,System.IntPtr,System.Int32,System.Int32)">
            <summary>
            Trims a list to contain only the specified range of elements (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the list key.</param>
            <param name="start">The start index (0-based).</param>
            <param name="stop">The stop index (inclusive, use -1 for end).</param>
            <returns>True if the command was successful, false otherwise.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeListRemove(System.IntPtr,System.IntPtr,System.Int32,System.IntPtr)">
            <summary>
            Removes occurrences of elements from a list (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the list key.</param>
            <param name="count">Number of occurrences to remove (see C# ListRemove docs).</param>
            <param name="elementPtr">Pointer to a null-terminated UTF-8 string representing the element to remove.</param>
            <returns>The number of elements removed, or 0 on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeHashSet(System.IntPtr,System.IntPtr,System.IntPtr,System.IntPtr)">
            <summary>
            Sets the value of a field within a hash (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the hash key.</param>
            <param name="fieldPtr">Pointer to a null-terminated UTF-8 string representing the field name.</param>
            <param name="valuePtr">Pointer to a null-terminated UTF-8 string representing the value to set.</param>
            <returns>True if the field was new or updated successfully, false on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeHashGet(System.IntPtr,System.IntPtr,System.IntPtr)">
            <summary>
            Gets the value of a field within a hash (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the hash key.</param>
            <param name="fieldPtr">Pointer to a null-terminated UTF-8 string representing the field name.</param>
            <returns>Pointer to a null-terminated UTF-8 string result allocated via AllocHGlobal (caller must free with FreeString), or IntPtr.Zero on error or if field/key not found.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeHashDelete(System.IntPtr,System.IntPtr,System.IntPtr)">
            <summary>
            Deletes a field from a hash (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the hash key.</param>
            <param name="fieldPtr">Pointer to a null-terminated UTF-8 string representing the field to delete.</param>
            <returns>True if the field was deleted, false otherwise (e.g., field/key not found).</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeHashFieldExists(System.IntPtr,System.IntPtr,System.IntPtr)">
            <summary>
            Checks if a field exists within a hash (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the hash key.</param>
            <param name="fieldPtr">Pointer to a null-terminated UTF-8 string representing the field name.</param>
            <returns>True if the field exists, false otherwise.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeHashMultiSet(System.IntPtr,System.IntPtr,System.IntPtr)">
            <summary>
            Sets multiple fields and values in a hash (Native Interop).
            Parses a space-separated string of field-value pairs.
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the hash key.</param>
            <param name="fieldValuePairsPtr">Pointer to a null-terminated UTF-8 string of space-separated field-value pairs.</param>
            <returns>True if successful, false on error (e.g., odd number of pairs).</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeHashGetAll(System.IntPtr,System.IntPtr)">
            <summary>
            Gets all fields and values from a hash (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="keyPtr">Pointer to a null-terminated UTF-8 string representing the hash key.</param>
            <returns>Pointer to a null-terminated UTF-8 string containing newline-delimited "field=value" pairs, allocated via AllocHGlobal (caller must free with FreeString), or IntPtr.Zero on error or if hash not found.</returns>
            <remarks>The returned IntPtr points to a single string. The native caller must parse this string (e.g., split by '\n', then by '=') and free the pointer using NativeFreeString.</remarks>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeSetPipelineMode(System.IntPtr,System.Boolean)">
            <summary>
            Enables or disables pipeline mode for the client (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="enabled">True to enable pipeline mode, false to disable.</param>
            <returns>True if the mode was set successfully, false on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeSetBatchSize(System.IntPtr,System.Int32)">
            <summary>
            Sets the maximum number of commands to batch in pipeline mode (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="size">The maximum number of commands to queue before sending.</param>
            <returns>True if the batch size was set successfully, false on error (e.g., invalid size).</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeFlushPipeline(System.IntPtr)">
            <summary>
            Sends all queued commands to the server immediately (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <returns>Pointer to a null-terminated UTF-8 string containing the server's combined response, allocated via AllocHGlobal (caller must free with FreeString), or IntPtr.Zero on error or if queue was empty.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeGetQueuedCommandCount(System.IntPtr)">
            <summary>
            Gets the number of commands currently waiting in the pipeline queue (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <returns>The number of queued commands, or 0 on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeIsPipelineMode(System.IntPtr)">
            <summary>
            Checks if pipeline mode is currently enabled for the client (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <returns>True if pipeline mode is enabled, false otherwise or on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeGetBatchSize(System.IntPtr)">
            <summary>
            Gets the current maximum batch size configured for pipeline mode (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <returns>The maximum batch size, or 0 on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.NativeKeys(System.IntPtr,System.IntPtr)">
            <summary>
            Gets all keys matching the specified pattern (Native Interop).
            </summary>
            <param name="handle">The GCHandle (as IntPtr) representing the client instance.</param>
            <param name="patternPtr">Pointer to a null-terminated UTF-8 string representing the pattern to match against keys.</param>
            <returns>Pointer to a null-terminated UTF-8 string containing newline-delimited keys, allocated via AllocHGlobal (caller must free with FreeString), or IntPtr.Zero on error.</returns>
        </member>
        <member name="M:FireflyClient.FireflyClient.StringSet(System.String,System.String)">
            <summary>
            Sets a key-value pair
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.StringGet(System.String)">
            <summary>
            Gets a value by key
            </summary>
        </member>
        <member name="M:FireflyClient.FireflyClient.Delete(System.String)">
            <summary>
            Deletes a key from all stores (string, list, hash)
            </summary>
        </member>
        <member name="T:FireflyClient.Program">
            <summary>
            Command-line interface for Firefly
            </summary>
        </member>
    </members>
</doc>
